La instrucción SELECT en SQL es una de las consultas más importantes y se utiliza para recuperar datos de una o varias tablas en una base de datos. Es la base de cualquier operación de lectura en SQL.
SELECT [columnas]
FROM [tabla]
WHERE [condición]
GROUP BY [columnas]
HAVING [condición]
ORDER BY [columnas] [ASC | DESC]
LIMIT [número de filas];
SELECT
* para seleccionar todas las columnas de la tabla.Ejemplo:
SELECT nombre, edad FROM usuarios;
FROM
Ejemplo:
SELECT * FROM empleados;
WHERE
=, >, <, LIKE, IN, etc.Ejemplo:
SELECT * FROM productos WHERE precio > 100;
GROUP BY
SUM(), COUNT(), etc.Ejemplo:
SELECT departamento, COUNT(*)
FROM empleados
GROUP BY departamento;
HAVING
WHERE, pero se aplica sobre los resultados agrupados.Ejemplo:
SELECT departamento, AVG(salario)
FROM empleados
GROUP BY departamento
HAVING AVG(salario) > 5000;
ORDER BY
ASC), pero puede ser descendente (DESC).Ejemplo:
SELECT nombre, salario
FROM empleados
ORDER BY salario DESC;
LIMIT
Ejemplo:
SELECT * FROM productos LIMIT 10;
COUNT(), SUM(), AVG(), MIN(), MAX().AS para cambiar el nombre temporalmente.SELECT nombre AS NombreEmpleado FROM empleados;
DISTINCT.SELECT DISTINCT ciudad FROM clientes;
SELECT departamento, COUNT(*) AS TotalEmpleados
FROM empleados
WHERE salario > 3000
GROUP BY departamento
HAVING COUNT(*) > 5
ORDER BY TotalEmpleados DESC
LIMIT 3;
departamento y cuenta el número de empleados.departamento.La instrucción SELECT es clave en SQL y puede combinarse con otras cláusulas, funciones y operaciones para realizar consultas avanzadas y obtener información útil de la base de datos.
Egercicios sobre Geoplaces:
Sin utilizar HAVING sacar un listado con todas las regiones que tienen una única provincia:
SELECT NOM_REG FROM
(SELECT COUNT(P.NOMBRE) AS CONT_PROV,
R.nombre AS NOM_REG
FROM provincias P, regiones R
WHERE P.fk_region = R.id
GROUP BY R.nombre ORDER BY 1 ASC
LIMIT 9) AS TV