Curso de Bases de datos con SQL
Operadores en consultas SQL
Resulta también muy útil el filtrar los registros mediante condiciones que vienen expresadas después de la cláusula WHERE.
| Operadores matemáticos | ||
|---|---|---|
| Operador | Significado | Ejemplo |
| > | Mayor que | SELECT * FROM users WHERE age > 10 |
| < | Menor que | SELECT * FROM users WHERE age < 10 |
| >= | Mayor o igual que | SELECT * FROM users WHERE age >= 10 |
| <= | Menor o igual que | SELECT * FROM users WHERE age <= 10 |
| <> | Distinto | SELECT * FROM users WHERE age <> 10 |
| = | Igual | SELECT * FROM users WHERE age = 10 |
| Operadores lógicos | ||
|---|---|---|
| Operador | Significado | Ejemplo |
| AND | Que se cumplan ambas | SELECT * FROM users WHERE age > 10 AND name = ‘Paco’ |
| OR | Que se cumpla una de las dos condiciones | SELECT * FROM users WHERE age < 10 OR name = ‘Paco’ |
| NOT | Que no se cumpla la condición | SELECT * FROM users WHERE NOT age >= 10 |
| Otros operadores | ||
|---|---|---|
| Operador | Significado | Ejemplo |
| LIKE | Selecciona los registros cuyo valor de campo se asemeje, no teniendo en cuenta mayúsculas ni minúsculas | SELECT * FROM users WHERE name LIKE ‘%aco’ |
| IN, NOT IN | Da un conjunto de valores para un campo para los cuales la condición de selección es (o no) válida | SELECT * FROM users WHERE age IN (10, 15, 20) |
| IS NULL, IS NOT NULL | Selecciona aquellos registros donde el campo especificado esta (o no ) vacío | SELECT * FROM users WHERE age IS NOT NULL |
| BETWEEN … AND | Selecciona los registros comprendidos en un intervalo | SELECT * FROM users WHERE age BETWEEN 10 AND 20 |
| DISTINCT | Selecciona los registros no coincidentes | SELECT DISTINCT (name) FROM users |
| DESC | Clasifica los registros por orden inverso | SELECT * FROM users ORDER BY name DESC |
| LIMIT | Limita los registros devueltos por la consulta | SELECT * FROM users LIMIT 5 |
| OFFSET | Se salta los registros anteriores al valor indicado por el parámetro | SELECT * FROM users OFFSET 5 |
Ejercicios
Realiza las siguientes consultas en la base de datos que tiene las siguientes tablas:
- books
- id
- title
- price
- author_id
- authors
- id
- name
- born_date