842 Shares 7936 views

La sentencia Select (SQL)

La traducción de la abreviatura SQL (el lenguaje de las consultas estructuralmente organizadas) refleja el hecho de que las consultas son el elemento más utilizado en SQL. Seleccione las filas necesarias, excluya automáticamente los datos redundantes, omita o vuelva a ordenar las columnas. Ayuda a Seleccionar (SQL): un operador que le indica al DBMS que genere determinada información.

Sintaxis del operador

Para utilizar correctamente cualquier operador, primero debe familiarizarse con la sintaxis del lenguaje de programación en cuestión. Cuando hablamos específicamente sobre el lenguaje SQL, Select (el operador) tiene la siguiente sintaxis:

Seleccionar

Indica a la base de datos que estamos transmitiendo la solicitud. Esta es la palabra clave.

Uno, dos, tres …

Lista de columnas para la salida

De

Indica el nombre de la tabla desde la cual seleccionar los datos. También es una palabra clave necesaria.

Esta es la llamada sintaxis "corta" del operador, pero nos indica que sin las palabras clave Select y del DBMS, nuestra consulta no se ejecutará.

La sintaxis completa para el operador se muestra en la siguiente figura:

Aquí, la cláusula Where le permite refinar la búsqueda especificando una condición.

Para agrupar valores y aplicarles una función de agregación, se utiliza la cláusula Group by y, para especificar el resultado después de la agrupación, se utiliza la opción Having.

Ordenar por le permitirá ordenar los valores de las columnas seleccionadas en orden ascendente o descendente.

с информацией: Para obtener una mejor comprensión del operador Select, imaginemos que en nuestra base de datos hay la siguiente tabla Cats con la información:

Id

Raza

Nombre

Cumpleaños

Color

1

Bobtail

Señor

04/01/2017

Gris

2

Rizo

Fint

16/03/2012

Blanco

3

Mau

Pantera

03/03/2017

Negro

4

Bobtail

Tyson

23/02/2017

Gris

5

Burmilla

Athena

01/08/2017

Negro

Cada fila de la tabla contiene el número único del gatito, su raza, apodo, fecha de nacimiento y color. A continuación, consideraremos cómo funciona el operador Select (SQL), basado en los datos de esta tabla.

Cómo se extraen los datos de una tabla

Como se mencionó anteriormente, las palabras clave siempre se utilizan para seleccionar la información correcta de la tabla.

Después de la palabra clave Select, se especifican las columnas para la salida. Puede hacer una lista de las columnas necesarias separadas por una coma, entonces toda la estructura se verá así:

Seleccione el color, la raza, el nombre

De gatos

Como puede ver, podemos organizar las columnas en el orden en que se necesitan. Además, sólo podemos mostrar las columnas que necesitamos.

También hay una entrada corta para ver todas las columnas de la tabla. Para ello, después de la selección, un asterisco (*) se indica con un espacio. El diseño completo se verá así:

Seleccione *

De gatos

El resultado de la consulta anterior es toda la tabla Cats, representada tal como aparece al final de la última sección.

Muchas personas están interesadas en cómo colocar los resultados de la ejecución en SQL Select en una cadena. La mayoría de las veces esto se requiere cuando es necesario combinar el apellido, nombre y patronímico de la persona, colocados en columnas desunidas.

En nuestro caso, combinamos la raza y el color de los gatos de la mesa Gatos. El matiz es que diferentes DBMS utilizan diferentes caracteres para la concatenación de cadenas. En algunos casos, esto es sólo un plus (+), en otros – una línea doble (||) o un esperma (&), a veces se utiliza el operando Concat. Por lo tanto, antes de fusionar, necesita leer la anotación al DBMS particular con el que está trabajando.

Seleccionar raza || ¡Bienvenido! Color

De gatos

El resultado es el siguiente:

Raza, Color

Bobtail, gris

Curl, Blanco

Mau, Negro

Bobtail, gris

Burmilla, Negro

Excluyendo datos redundantes

Distinct – function Select (SQL), que permite excluir la duplicación de líneas absolutamente idénticas del resultado de la muestra.

Por ejemplo, queremos saber qué gatos están en nuestra mesa. Si utilizamos una consulta simple:

Seleccionar raza

De gatos

Que vamos a recibir muy esperado resultado:

Raza

Bobtail

Rizo

Mau

Bobtail

Burmilla

Como se puede ver, la raza Bobtail se duplica dos veces. Argument Distinct eliminará la duplicación, sólo tiene que completar la consulta:

Seleccione una raza distinta

De gatos

Refinamiento de la solicitud

En realidad, casi ninguna consulta emite datos como un conjunto completo de filas de tabla. Consideremos, qué oración en Select (SQL) permite establecer criterios para seleccionar sólo las líneas necesarias.

Aquí es donde. En esta oración se utiliza un predicado – una expresión condicional que da a la salida el valor "verdadero" o "falso". La instrucción Select recupera sólo los datos de la tabla para los que la expresión condicional será True o "true".

Ayudará a resolver con este diseño una muestra simple. Digamos que queremos saber todo sobre los gatos negros.

Seleccione *

De gatos

Donde color = 'Negro'

El resultado de esta consulta será las siguientes filas de la tabla:

3

Mau

Pantera

03/03/2017

Negro

5

Burmilla

Athena

01/08/2017

Negro

También puede combinar las condiciones con los operadores lógicos Y, O, No.

Agrupar por

La cláusula Group by, que se utiliza en Select (SQL), permite agrupar las consultas por el valor de una columna (o columnas) en particular y, a continuación, aplicarles la función agregada.

Las funciones agregadas incluyen:

  • Cuenta: calcula el número de filas seleccionadas por la consulta.
  • Sum es la suma aritmética de todos los valores de columna seleccionados.
  • Min – imprime el mínimo de los valores de columna seleccionados.
  • Max es el máximo de los valores de columna seleccionados, respectivamente.
  • Prom es el promedio.

El esquema de esta propuesta es más fácil de entender en un ejemplo concreto. Digamos que queremos saber cuántos gatitos de cada raza tenemos. Para ello, debe generar la siguiente consulta simple:

Seleccione raza, cuenta (*)

De gatos

Grupo por raza

El resultado de la ejecución será el siguiente cuadro:

Raza

Contar

Bobtail

2

Rizo

1

Mau

1

Burmilla

1

Como puede ver, tenemos dos Bobtails con gatitos, el resto tiene sólo uno. En la práctica, de acuerdo con esta solicitud, basada en nuestra tabla, el obtentor puede entender qué razas gatos están en demanda entre los compradores, y cuáles no.

Es probable que debido al gran número de entradas en una tabla real, todavía será necesario aclarar la consulta y retirar sólo las razas de gatitos, que no son más, por ejemplo, diez. Para refinar o filtrar grupos, utilice la cláusula Having. Le permite eliminar determinados grupos, similar a la cláusula Where, que descarta filas individuales. La condición se da por la función agregada. Vamos a agregar la consulta:

Seleccione raza, cuenta (*)

De gatos

Grupo por raza

Contar (*) <= 10

Dado que la condición que establece "el número de gatitos de cada raza no es más de 10", el resultado es el mismo que en el ejemplo sin especificación. Pero aquí es importante entender el esquema mismo de la obra de la propuesta. Pero si cambiamos la condición lógica a Tener count (*) = 1, entonces el resultado se reducirá a tres líneas y la salida de la raza de gatitos, que sólo queda uno.

Clasificación

Vamos a familiarizarnos con la orden por frase del operador Select (SQL), que le permite ordenar las líneas de salida aumentando o disminuyendo valores en una o más columnas.

Es importante recordar que Order by es la sentencia final de toda la construcción de la sentencia Select. Se coloca después de Seleccionar, De, Dónde, Agrupar por, Tener.

Al clasificar, hay tres puntos importantes:

1) Puede especificar cualquier número de columnas, cada una de las cuales puede ordenarse individualmente ascendente (ASC) o descendente (DESC).

2) Todas las columnas especificadas en la cláusula Order by deben estar presentes entre las columnas seleccionadas en Select.

3) No es necesario listar nombres de columnas específicos para la clasificación, simplemente puede especificar sus números, bajo los cuales van en la instrucción Select.

Esperamos que con la ayuda de este artículo que ha recibido conocimientos básicos sobre el uso de consultas SQL y ahora puede seleccionar fácilmente la información necesaria de su DBMS.