SQL - Cláusula WHERE
El SQL WHERELa cláusula se utiliza para especificar una condición al obtener los datos de una sola tabla o al unirse con varias tablas. Si se cumple la condición dada, solo devuelve un valor específico de la tabla. Debe usar la cláusula WHERE para filtrar los registros y obtener solo los registros necesarios.
La cláusula WHERE no solo se usa en la instrucción SELECT, sino que también se usa en la instrucción UPDATE, DELETE, etc., que examinaremos en los capítulos siguientes.
Sintaxis
La sintaxis básica de la instrucción SELECT con la cláusula WHERE es la que se muestra a continuación.
SELECT column1, column2, columnN
FROM table_name
WHERE [condition]
Puede especificar una condición usando la comparación u operadores lógicos como>, <, =,LIKE, NOT, etc. Los siguientes ejemplos aclararían este concepto.
Ejemplo
Considere la tabla CLIENTES que tiene los siguientes registros:
+----+----------+-----+-----------+----------+
| ID | NAME | AGE | ADDRESS | SALARY |
+----+----------+-----+-----------+----------+
| 1 | Ramesh | 32 | Ahmedabad | 2000.00 |
| 2 | Khilan | 25 | Delhi | 1500.00 |
| 3 | kaushik | 23 | Kota | 2000.00 |
| 4 | Chaitali | 25 | Mumbai | 6500.00 |
| 5 | Hardik | 27 | Bhopal | 8500.00 |
| 6 | Komal | 22 | MP | 4500.00 |
| 7 | Muffy | 24 | Indore | 10000.00 |
+----+----------+-----+-----------+----------+
El siguiente código es un ejemplo que obtendría los campos ID, Nombre y Salario de la tabla CLIENTES, donde el salario es mayor que 2000 -
SQL> SELECT ID, NAME, SALARY
FROM CUSTOMERS
WHERE SALARY > 2000;
Esto produciría el siguiente resultado:
+----+----------+----------+
| ID | NAME | SALARY |
+----+----------+----------+
| 4 | Chaitali | 6500.00 |
| 5 | Hardik | 8500.00 |
| 6 | Komal | 4500.00 |
| 7 | Muffy | 10000.00 |
+----+----------+----------+
La siguiente consulta es un ejemplo, que buscaría los campos ID, Nombre y Salario de la tabla CLIENTES para un cliente con el nombre Hardik.
Aquí, es importante tener en cuenta que todas las cadenas deben estar entre comillas simples (''). Considerando que, los valores numéricos deben darse sin ninguna comilla como en el ejemplo anterior.SQL> SELECT ID, NAME, SALARY
FROM CUSTOMERS
WHERE NAME = 'Hardik';
Esto produciría el siguiente resultado:
+----+----------+----------+
| ID | NAME | SALARY |
+----+----------+----------+
| 5 | Hardik | 8500.00 |
+----+----------+----------+