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