En esta sección, aprenderemos cómo realizar consultas en PostgreSQL para extraer información de nuestras bases de datos. Las consultas son una parte fundamental de SQL y nos permiten interactuar con los datos de manera efectiva.

Contenido

SELECT Básico

La instrucción SELECT se utiliza para consultar datos de una o más tablas. La sintaxis básica es la siguiente:

SELECT column1, column2, ...
FROM table_name;

Ejemplo Práctico

Supongamos que tenemos una tabla llamada employees con las siguientes columnas: id, name, position, y salary.

SELECT name, position
FROM employees;

Este comando selecciona las columnas name y position de la tabla employees.

Filtrando Resultados con WHERE

La cláusula WHERE se utiliza para filtrar registros que cumplen una condición específica.

Ejemplo Práctico

SELECT name, position
FROM employees
WHERE salary > 50000;

Este comando selecciona los nombres y posiciones de los empleados cuyo salario es mayor a 50,000.

Ordenando Resultados con ORDER BY

La cláusula ORDER BY se utiliza para ordenar los resultados de una consulta en orden ascendente o descendente.

Ejemplo Práctico

SELECT name, salary
FROM employees
ORDER BY salary DESC;

Este comando selecciona los nombres y salarios de los empleados y los ordena en orden descendente según el salario.

Limitando Resultados con LIMIT y OFFSET

Las cláusulas LIMIT y OFFSET se utilizan para limitar el número de filas devueltas por una consulta y para omitir un número específico de filas, respectivamente.

Ejemplo Práctico

SELECT name, position
FROM employees
ORDER BY name
LIMIT 5 OFFSET 10;

Este comando selecciona los nombres y posiciones de los empleados, ordena los resultados por nombre, omite las primeras 10 filas y devuelve las siguientes 5 filas.

Consultas con Funciones de Agregación

Las funciones de agregación realizan cálculos sobre un conjunto de valores y devuelven un solo valor. Las funciones de agregación más comunes son COUNT, SUM, AVG, MAX, y MIN.

Ejemplo Práctico

SELECT COUNT(*)
FROM employees;

Este comando cuenta el número total de empleados en la tabla employees.

SELECT AVG(salary)
FROM employees;

Este comando calcula el salario promedio de los empleados.

Agrupando Resultados con GROUP BY

La cláusula GROUP BY se utiliza para agrupar filas que tienen los mismos valores en columnas especificadas en grupos de resumen.

Ejemplo Práctico

SELECT position, COUNT(*)
FROM employees
GROUP BY position;

Este comando cuenta el número de empleados en cada posición.

Filtrando Grupos con HAVING

La cláusula HAVING se utiliza para filtrar grupos de resultados que cumplen una condición específica, similar a la cláusula WHERE pero aplicada a grupos.

Ejemplo Práctico

SELECT position, AVG(salary)
FROM employees
GROUP BY position
HAVING AVG(salary) > 60000;

Este comando agrupa a los empleados por posición, calcula el salario promedio para cada posición y devuelve solo aquellas posiciones donde el salario promedio es mayor a 60,000.

Ejercicios Prácticos

Ejercicio 1

Consulta: Selecciona los nombres y salarios de los empleados cuyo salario es mayor a 70,000.

SELECT name, salary
FROM employees
WHERE salary > 70000;

Ejercicio 2

Consulta: Selecciona los nombres y posiciones de los empleados, ordenados por nombre en orden ascendente.

SELECT name, position
FROM employees
ORDER BY name ASC;

Ejercicio 3

Consulta: Cuenta el número de empleados en cada posición y muestra solo aquellas posiciones con más de 5 empleados.

SELECT position, COUNT(*)
FROM employees
GROUP BY position
HAVING COUNT(*) > 5;

Conclusión

En esta sección, hemos aprendido cómo realizar consultas básicas y avanzadas en PostgreSQL utilizando la instrucción SELECT y las cláusulas WHERE, ORDER BY, LIMIT, OFFSET, GROUP BY, y HAVING. Estas herramientas son fundamentales para extraer y analizar datos de manera efectiva. En la próxima sección, profundizaremos en las operaciones de actualización de datos.

Curso de PostgreSQL

Módulo 1: Introducción a PostgreSQL

Módulo 2: Operaciones Básicas de SQL

Módulo 3: Consultas Avanzadas de SQL

Módulo 4: Diseño de Bases de Datos y Normalización

Módulo 5: Características Avanzadas de PostgreSQL

Módulo 6: Ajuste de Rendimiento y Optimización

Módulo 7: Seguridad y Gestión de Usuarios

Módulo 8: Trabajando con JSON y Características NoSQL

Módulo 9: Extensiones y Herramientas Avanzadas

Módulo 10: Estudios de Caso y Aplicaciones del Mundo Real

© Copyright 2024. Todos los derechos reservados