En este tema, aprenderemos a utilizar la cláusula WHERE en SQL para filtrar datos de una tabla. La cláusula WHERE es fundamental para extraer solo las filas que cumplen con ciertas condiciones, lo que nos permite trabajar con conjuntos de datos más específicos y relevantes.

Conceptos Clave

  1. Cláusula WHERE: Se utiliza para especificar una condición mientras se recuperan datos de una tabla.
  2. Operadores de comparación: Incluyen =, !=, <, >, <=, >=.
  3. Operadores lógicos: Incluyen AND, OR, NOT.
  4. Condiciones múltiples: Combinación de varias condiciones usando operadores lógicos.

Sintaxis Básica

La sintaxis básica de la cláusula WHERE es la siguiente:

SELECT column1, column2, ...
FROM table_name
WHERE condition;

Ejemplos Prácticos

Ejemplo 1: Filtrar por una condición simple

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

SELECT name, age
FROM employees
WHERE age > 30;

Este comando selecciona los nombres y edades de todos los empleados que tienen más de 30 años.

Ejemplo 2: Usar operadores de comparación

SELECT name, salary
FROM employees
WHERE salary >= 50000;

Este comando selecciona los nombres y salarios de todos los empleados que ganan 50,000 o más.

Ejemplo 3: Filtrar con múltiples condiciones usando AND

SELECT name, department
FROM employees
WHERE department = 'Sales' AND age < 40;

Este comando selecciona los nombres y departamentos de todos los empleados que trabajan en el departamento de ventas y tienen menos de 40 años.

Ejemplo 4: Filtrar con múltiples condiciones usando OR

SELECT name, department
FROM employees
WHERE department = 'Sales' OR department = 'Marketing';

Este comando selecciona los nombres y departamentos de todos los empleados que trabajan en los departamentos de ventas o marketing.

Ejemplo 5: Usar NOT para negar una condición

SELECT name, age
FROM employees
WHERE NOT age = 25;

Este comando selecciona los nombres y edades de todos los empleados que no tienen 25 años.

Ejercicios Prácticos

Ejercicio 1

Dada la tabla products con las columnas product_id, product_name, category, y price, escribe una consulta para seleccionar todos los productos cuyo precio sea mayor a 100.

-- Escribe tu consulta aquí

Solución

SELECT product_name, price
FROM products
WHERE price > 100;

Ejercicio 2

Dada la tabla orders con las columnas order_id, customer_id, order_date, y total_amount, escribe una consulta para seleccionar todas las órdenes realizadas en el año 2022.

-- Escribe tu consulta aquí

Solución

SELECT order_id, customer_id, order_date, total_amount
FROM orders
WHERE order_date BETWEEN '2022-01-01' AND '2022-12-31';

Ejercicio 3

Dada la tabla employees, escribe una consulta para seleccionar todos los empleados que trabajan en el departamento de 'HR' o 'Finance' y tienen un salario mayor a 60,000.

-- Escribe tu consulta aquí

Solución

SELECT name, department, salary
FROM employees
WHERE (department = 'HR' OR department = 'Finance') AND salary > 60000;

Errores Comunes y Consejos

  1. Olvidar las comillas simples para valores de texto: Al filtrar por valores de texto, asegúrate de usar comillas simples (') alrededor del valor.
  2. Confundir AND y OR: Recuerda que AND requiere que ambas condiciones sean verdaderas, mientras que OR requiere que al menos una condición sea verdadera.
  3. Uso incorrecto de paréntesis: Cuando combinas múltiples condiciones, usa paréntesis para asegurarte de que las condiciones se evalúen en el orden correcto.

Conclusión

La cláusula WHERE es una herramienta poderosa en SQL que te permite filtrar datos de manera efectiva. Al dominar el uso de operadores de comparación y lógicos, puedes crear consultas precisas y eficientes para extraer exactamente los datos que necesitas. En el próximo tema, aprenderemos a ordenar los datos utilizando la cláusula ORDER BY.

Curso de SQL

Módulo 1: Introducción a SQL

Módulo 2: Consultas básicas de SQL

Módulo 3: Trabajando con múltiples tablas

Módulo 4: Filtrado avanzado de datos

Módulo 5: Manipulación de datos

Módulo 6: Funciones avanzadas de SQL

Módulo 7: Subconsultas y consultas anidadas

Módulo 8: Índices y optimización de rendimiento

Módulo 9: Transacciones y concurrencia

Módulo 10: Temas avanzados

Módulo 11: SQL en la práctica

Módulo 12: Proyecto final

© Copyright 2024. Todos los derechos reservados