SQL: declaración de selección

Los datos expuestos en este blog, son solo de índole informativo. Por favor realiza siempre una copia de seguridad antes de realizar cualquier cambio en tu proyecto.

SQL: declaración de selección

Este tutorial de SQL explica cómo usar SQL declaración de selección Viene con gramática, ejemplos y ejercicios.

describir

La declaración SQL SELECT se usa para recuperar registros de una o más tablas en una base de datos SQL. Los registros recuperados se denominan conjuntos de resultados.

sintaxis

La sintaxis de la instrucción SELECT en SQL es:

SELECT expressions
FROM tables
[WHERE conditions]
[ORDER BY expression [ ASC | DESC ]];

parámetro o parámetro

Expresión La columna o cálculo que desea recuperar. Utilice * si desea seleccionar todas las columnas. tabla La tabla de la que desea recuperar registros. Debe aparecer al menos una tabla en la cláusula FROM. La condición WHERE es opcional. Para seleccionar las condiciones que debe cumplir un registro. Si no se proporcionan condiciones, se seleccionarán todos los registros. La expresión ORDER BY es opcional. La expresión utilizada para ordenar los registros en el conjunto de resultados. Si se proporcionan varias expresiones, los valores deben estar separados por comas. ASC es opcional. ASC ordena el conjunto de resultados en orden ascendente de expresiones. Este es el comportamiento predeterminado si el proveedor no es ningún modificador. DESC opcional. DESC ordena el conjunto de resultados en orden descendente de expresiones.

Ejemplo de DDL/DML

Si desea seguir este tutorial, obtenga DDL para crear las tablas y DML para completar los datos. ¡Entonces pruebe los ejemplos en su propia base de datos!

Ejemplo: seleccione todos los campos de la tabla

Veamos un ejemplo que muestra cómo usar una instrucción SQL SELECT para seleccionar todos los campos de una tabla.

En este ejemplo, tenemos una tabla llamada clientes con los siguientes datos:

Identificación del cliente apellido nombre sitio favorito
4000 jackson José Red de Ciencia y Tecnología
5000 Herrero simple digminecraft.com
6000 Ferguson samantha granactividad.com
7000 Reynolds Alan revisatumath.com
8000 anderson Página nulo
9000 Johnson Derek Red de Ciencia y Tecnología

Ahora demostremos cómo funciona la declaración SELECT seleccionando todas las columnas de la tabla de clientes. Ingrese la siguiente instrucción SELECT:

SELECT *
FROM customers
WHERE favorite_website="prograrmaplus.com"
ORDER BY last_name ASC;

Se seleccionarán 2 registros. Estos son los resultados que deberías ver:

Identificación del cliente apellido nombre sitio favorito
4000 jackson José Red de Ciencia y Tecnología
9000 Johnson Derek Red de Ciencia y Tecnología

En este ejemplo, usamos * para indicar que queremos ver todos los campos en la tabla de clientes donde el sitio web favorito es “prograrmaplus.com”. El conjunto de resultados se ordena por apellido en orden ascendente.

Ejemplo: seleccione un solo campo de una tabla

También puede usar una instrucción SQL SELECT para seleccionar un solo campo de una tabla en lugar de todos los campos de la tabla.

En este ejemplo, tenemos una tabla llamada proveedores con los siguientes datos:

Identificación del proveedor Nombre del proveedor Ciudad Expresar
100 microsoft Redmond Washington
200 Google paisaje de la cima de la montaña California
300 Oráculo ciudad de secoya California
400 Kimberly Clark Owen Texas
500 Alimentos Tyson Springdale Arkansas
600 sc johnson Racine el estado de wisconsin
700 Alimentos Dole pueblo del lago oeste California
800 flores comida thomasville Georgia
900 Artes electrónicas ciudad de secoya California

Ahora demostremos cómo usar la declaración SELECT para seleccionar una sola columna de una tabla. Ingrese la siguiente instrucción SELECT:

SELECT supplier_name, city
FROM suppliers
WHERE supplier_id > 500
ORDER BY supplier_name ASC, city DESC;

Se deben seleccionar 4 registros. Estos son los resultados que deberías ver:

Nombre del proveedor Ciudad
Alimentos Dole pueblo del lago oeste
Artes electrónicas ciudad de secoya
flores comida thomasville
sc johnson Racine

Este ejemplo solo devolverá los campos NombreProveedor y Ciudad en la tabla Proveedores con un valor de IdProveedor superior a 500. Los resultados se ordenan por nombre de proveedor en orden ascendente, luego por ciudad en orden descendente.

Ejemplo: seleccione un solo campo de varias tablas

También puede recuperar campos de varias tablas mediante la instrucción SQL SELECT.

En este ejemplo, tenemos una tabla llamada pedidos con los siguientes datos:

Solicitar ID Identificación del cliente fecha de orden
1 7000 2016/04/18
2 5000 2016/04/18
3 8000 2016/04/19
4 4000 2016/04/20
5 nulo 2016/05/01

También existe una tabla llamada clientes con los siguientes datos:

Identificación del cliente apellido nombre sitio favorito
4000 jackson José Red de Ciencia y Tecnología
5000 Herrero simple digminecraft.com
6000 Ferguson samantha granactividad.com
7000 Reynolds Alan revisatumath.com
8000 anderson Página nulo
9000 Johnson Derek Red de Ciencia y Tecnología

Ahora seleccionemos columnas de la tabla Pedidos y Clientes. Ingrese la siguiente instrucción SELECT:

SELECT orders.order_id, customers.last_name
FROM orders
INNER JOIN customers
ON orders.customer_id = customers.customer_id
WHERE orders.order_id <> 1
ORDER BY orders.order_id;

Se seleccionarán 3 registros. Estos son los resultados que deberías ver:

Solicitar ID apellido
2 Herrero
3 anderson
4 jackson

Este ejemplo de SELECT une dos tablas, dándonos un conjunto de resultados que muestra order_id de la tabla de pedidos y last_name de la tabla de clientes. Cada vez que usamos una columna en una declaración SELECT, anteponemos la columna con el nombre de la tabla (por ejemplo, orders.order_id), en caso de que haya alguna ambigüedad sobre a qué tabla pertenece la columna.

Si desea seleccionar todos los campos de la tabla de pedidos y luego el campo last_name de la tabla de clientes, ingrese la siguiente instrucción SELECT:

SELECT orders.*, customers.last_name
FROM orders
INNER JOIN customers
ON orders.customer_id = customers.customer_id
WHERE orders.order_id <> 1
ORDER BY orders.order_id;

Se seleccionarán 3 registros. Estos son los resultados que deberías ver:

Solicitar ID Identificación del cliente fecha de orden apellido
2 5000 2016/04/18 Herrero
3 8000 2016/04/19 anderson
4 4000 2016/04/20 jackson

En este ejemplo, usamos orders.* para indicar que queremos seleccionar todos los campos de la tabla de pedidos y luego seleccionamos el campo last_name de la tabla de clientes.

práctica práctica

Si desea poner a prueba sus habilidades con las sentencias SQL SELECT, pruebe algunos de nuestros ejercicios.

Estos ejercicios le permiten probar sus habilidades usando la sentencia SELECT. Recibirá preguntas que necesitan ser resueltas. Después de cada ejercicio, proporcionamos soluciones para que puedas comprobar tus respuestas. ¡Darle una oportunidad!