sql >> Base de Datos >  >> RDS >> Database

Comandos básicos de SQL:cómo escribir consultas simples con ejemplos

Este artículo explica cómo escribir consultas SQL simples desde las más básicas y cómo mejorar gradualmente el script para resolver algunos problemas matemáticos y relacionados con fechas. Además, vamos a aclarar los conceptos relacionados con las consultas SQL.

Aunque este artículo es principalmente para principiantes, contiene sugerencias que serán útiles para cualquier nivel de experiencia.

¿Qué es la consulta SQL en la base de datos?

Primero hablemos un poco sobre las consultas SQL para entenderlas correctamente antes de obtener experiencia práctica de escritura.

SQL significa lenguaje de consulta estructurado ese es un lenguaje esencial utilizado para consultar bases de datos relacionales.

T-SQL frente a SQL:¿cuál es la diferencia?

T-SQL o Transact-SQL es la versión de Microsoft de SQL con más funciones y características que el lenguaje SQL tradicional, también conocido como ANSI SQL.

Por lo tanto, T-SQL es un lenguaje SQL tradicional y más cosas agregadas por Microsoft. Es más comúnmente usado y mencionado cuando hablamos de SQL.

Este artículo se referirá a la versión de Microsoft SQL ya sea que usemos la palabra SQL o T-SQL.

¿Por qué usamos consultas SQL en una base de datos relacional?

Una base de datos relacional es una base de datos con claves que se utilizan para conectar tablas en lugar de conectar tablas físicamente.

Por ejemplo, tiene una tabla llamada Libro que vincula a otra tabla llamada BookType a través de teclas para agregar más significados a los registros.

Las tablas de la ilustración están vinculadas a través de una clave. No hay necesidad de conectarlos físicamente. Esta es la regla fundamental de las bases de datos relacionales:crea relaciones entre las dos tablas con la ayuda de claves.

Lea también base de datos relacional frente a NoSQL:¿qué elegir para la gestión de big data?

¿Qué es consultar una base de datos?

Consulta la base de datos para obtener respuestas a preguntas relacionadas con esa base de datos. En otras palabras, escribe consultas en una base de datos para obtener información sobre los datos que contiene.

Por ejemplo, le interesa ver todos los registros de libros junto con sus tipos en la base de datos en particular. Debe consultar esa base de datos para ver los datos requeridos. Para eso, debe escribir y ejecutar un script en la base de datos.

¿Qué necesitas para realizar una consulta?

Deben existir algunos requisitos previos para consultar una base de datos, ya que no podemos simplemente escribir y ejecutar una consulta en cualquier lugar contra cualquier cosa.

Las siguientes cosas son obligatorias para consultar una base de datos:

  1. Un servidor de base de datos como SQL Server (instalado local o remotamente) donde almacena la base de datos.
  2. Una herramienta de administración de bases de datos como SQL Server Management Studio o dbForge Studio para SQL Server que usará para escribir y ejecutar sus consultas
  3. Una base de datos en la que ejecuta sus consultas. Puede crear cualquier base de datos de muestra con fines de aprendizaje.

Además, debe tener una comprensión básica de su base de datos, como qué tabla contiene la información deseada, etc. La comprensión de los conceptos de bases de datos relacionales también es una ventaja.

Suponemos que ya ha cumplido con los requisitos anteriores. Pero también puede consultar el siguiente artículo para obtener más detalles:

Conceptos básicos de SQL Server Management Studio (SSMS):parte 1

Cosas que hacer antes de escribir consultas en SQL

Vamos a escribir consultas SQL simples ahora.

Configure el entorno para comenzar a escribir sus consultas SQL. Prepara las herramientas. Abra dbForge Studio para SQL Server o SQL Server Management Studio y conéctese a la instancia de SQL. Aquí comenzamos nuestro viaje SQL:

Una vez conectado con éxito, presione CTRL+N o vaya a Archivo> Nuevo> Consulta con conexión actual :

Ahora, está conectado con éxito al maestro (base de datos del sistema) del servidor conectado actualmente.

Consejo importante: Cree siempre una base de datos de muestra para ejecutar sus consultas (scripts) en ella. Ejecutar consultas en las bases de datos del sistema no es una buena práctica excepto en tres casos:

  1. Usted trabaja con una base de datos de muestra y luego el script creado para ella se ejecutará en la base de datos del sistema (maestra).
  2. Usted consulta la base de datos maestra a propósito para obtener información de ella.
  3. Es seguro ejecutar las consultas en la base de datos del sistema (maestra).

Configurar una base de datos de muestra

Vamos a crear una base de datos de muestra llamada BookSimple sin tablas. Escriba el siguiente script en la base de datos maestra para crear una base de datos de muestra y Presione F5 para ejecutar la consulta:

-- Create sample database BookSimple
USE MASTER
GO

CREATE DATABASE BookSimple
GO

USE BookSimple

El concepto basado en conjuntos detrás de las consultas SQL

Justo antes de escribir incluso la consulta SQL más simple, debe comprender que SQL es un lenguaje basado en conjuntos.

Significa que cuando desee consultar su base de datos utilizando SQL, debe pensar en términos de conjuntos o grupos.

SQL es por diseño y por defecto muy eficiente para atender solicitudes basadas en conjuntos. Si diseña sus secuencias de comandos (consultas) teniendo en cuenta la lógica basada en conjuntos, comprenderá e implementará SQL más rápido que aquellos que siguen la ruta típica de aprendizaje (que tiene sus propios beneficios).

Pensemos en un conjunto natural, como una clase o un grupo. Cuando nos referimos a una clase, nos referimos a todos los estudiantes de esa clase. SQL puede ayudar a consultar esa clase como un todo.

Del mismo modo, un Libro es una mesa de libros. Contiene todos los registros de libros. Simplemente podemos consultar esa tabla como si estuviéramos hablando de un solo libro, pero, en realidad, estamos consultando toda la tabla de libros representada por el Libro mesa.

Veremos más beneficios del concepto basado en conjuntos más adelante cuando exploremos algunos ejemplos básicos.

Instrucción SELECT de SQL simple

SELECT es una instrucción T-SQL que recupera todas las filas y columnas o las seleccionadas (según un criterio) de una base de datos.

En otras palabras, SELECCIONAR nos permite ver (seleccionar) datos de una tabla o varias tablas en función de ciertos criterios que, si no se mencionan de forma general, muestran todos los datos.

Por lo tanto, SELECT es la primera declaración que debemos buscar si queremos recuperar filas y columnas de una base de datos. La forma más simple de sintaxis SELECT es la siguiente:

SELECT * FROM <Table>

Recuerda que iremos modificando la sintaxis con el tiempo para mejorar gradualmente el proceso de aprendizaje.

Otra forma de usar la instrucción SELECT es la siguiente:

SELECT <Expression>

La expresión puede ser muchas cosas, incluyendo las siguientes:

  1. Constante (como un número fijo como 1).
  2. Variable (como @X, que se puede cambiar a cualquier número).
  3. Combinación de constantes o variables (como 1+2 o @X [email protected]).

Sin embargo, ya sea que use SELECT o SELECT * FROM

, debe pensar en términos de conjuntos.

Cómo escribir una consulta SQL simple

Consultemos el BookSimple base de datos actualizando las Bases de datos nodo bajo Explorador de objetos. Haga clic derecho en BookSimple > Nueva consulta :

Escriba la consulta SQL más simple:escriba y ejecute el siguiente script en la base de datos de ejemplo:

-- Display 1
SELECT 1

Ejecutar la consulta (presionando F5) mostrará los siguientes resultados:

Entonces, SELECT 1 devuelve 1, pero con una columna sin nombre (sin nombre de columna).

1 es una constante. Seguirá siendo 1, por lo que esperamos que el resultado sea 1 también. Sin embargo, hay una cosa más importante que debe comprender:nuestra salida se convierte en un conjunto de 1 columna y 1 fila. Dado que no hemos proporcionado ningún nombre a la columna y no hay ninguna tabla involucrada (de donde obtener el nombre), estamos obteniendo el valor 1 para una columna sin nombre de una tabla sin nombre (conjunto).

El lenguaje basado en conjuntos ha devuelto automáticamente nuestro valor proporcionado a una columna sin nombre de una tabla sin nombre que tiene una fila.

Nombremos la columna modificando el script de la siguiente manera:

-- Show value 1 for the column Number of an unnamed table (set)
SELECT 1 AS Number

Ejecute el script para ver el siguiente conjunto de resultados esta vez:

Dado que esta consulta siempre devuelve el mismo valor (número) que ingresamos (suministramos), no hay mucho que discutir aparte de comprender por qué el pensamiento basado en conjuntos es vital para comprender cómo funcionan las consultas.

Cálculo en instrucción Select

Usemos el caso anterior para cálculos rápidos en SQL:convertimos el valor único en una expresión.

Por ejemplo, queremos sumar rápidamente dos números 1000 y 200. Simplemente podemos escribir la siguiente consulta sin mencionar ninguna tabla usando solo la declaración SELECT:

-- Adding two numbers 1000 and 200 
SELECT 1000+200 AS [Sum Of 1000 And 200]

El resultado es el siguiente:

Del mismo modo, podemos sumar, multiplicar, dividir y restar números.

Es útil agregar dos columnas de una tabla que contenga valores numéricos. Sin embargo, también podemos usar este enfoque para agregar dos variables. El uso de variables es beneficioso ya que podemos sumar dos números al inicializar esas variables con los valores deseados. Esto se ilustra con el siguiente script:

-- SQL script to add any two numbers
DECLARE @X INT, @Y INT, @Addition INT

SET @X=550 -- Initialise variable X with a value (number)
SET @Y=350 -- Initialise variable Y with a value (number)
 
SET @[email protected]@sqldat.com -- SUM X and Y

SELECT @X AS FirstNumber_X,@Y as SecondNumber_Y,@Addition as SumOfNumbers

Ejecutar el script nos muestra el siguiente resultado:

Podemos guardar esta consulta para reutilizarla en cualquier momento para agregar dos números cualesquiera (cambiando los valores de @X y @Y). Si pensamos en esto en términos de un conjunto, podemos decir que la salida se devuelve como una tabla sin nombre (conjunto) con una fila y las siguientes tres columnas:

  1. PrimerNúmero_X
  2. SegundoNúmero_Y
  3. SumaDeNúmeros

Sin embargo, puede hacer más con SELECT con una base de datos en blanco (sin tablas).

Un ejemplo de cálculo de datos más

Aquí vamos a utilizar la función GETDATE() para recuperar la fecha actual y la fecha de entrega prevista de un pedido desconocido que aún no forma parte de nuestra tabla.

Supongamos que todavía no tenemos ninguna tabla de pedidos, pero queremos calcular rápidamente una fecha de entrega esperada del pedido del producto. Si agregamos cualquier número a la función GETDATE(), nos dirá la fecha agregada con el número de días proporcionado.

En otras palabras, si esperamos que la fecha de entrega del pedido sea dos días después de la realización del pedido, podemos calcularla usando SELECT con GETDATE()+2.

Para verlo en acción, ejecute el siguiente script SQL:

-- Calculating order date and expected delivery date
SELECT GETDATE() AS [Order Date],GETDATE()+2 as [Expected Delivery Date]

El conjunto de resultados es el siguiente:

Esta vez pudimos calcular la fecha esperada de entrega del pedido directamente usando la declaración SELECT con la función GETDATE() en ausencia de cualquier tabla.

Sin embargo, si tuviéramos una tabla, habríamos obtenido la fecha de entrega esperada para todos los pedidos en esa tabla.

Una vez más, si analizamos esta salida en términos de Set Logic, tenemos una tabla sin nombre (set) con dos columnas y una fila. SQL es un lenguaje basado en conjuntos que funciona muy rápido con conjuntos, como tablas. Si las tablas no están allí, trata los valores de entrada (para ser procesados) como conjuntos sin nombre.

En resumen, una consulta SQL requiere una instrucción SELECT seguida de una expresión para realizar algunos cálculos basados ​​en números o fechas, incluso en una base de datos en blanco (sin tablas).

¡Felicidades! Aprendió los conceptos básicos de las consultas SQL y escribió algunas consultas simples con la ayuda de la declaración SELECT en una base de datos de muestra.

Manténgase en contacto, ya que aún está por llegar la escritura de consultas SQL simples en las tablas de la base de datos.

Cosas para aprender a escribir mejor consultas SQL

Ahora que puede escribir algunas consultas SQL básicas, pruebe los siguientes ejercicios:

  1. Cree una base de datos de muestra BookSimple2.
  2. Cree una consulta para multiplicar dos números cualesquiera definiéndolos como variables.
  3. Escriba una consulta para crear una fecha de pedido como la fecha actual, la fecha de envío dos días después de la fecha del pedido y la fecha de entrega prevista dos días después de la fecha de envío.