CORE Code School

SQL básico: Consultas y filtrado con SELECT y WHERE

20 minutos

SELECT ara realizar consultas

Para consultar los datos en nuestra tabla usamos SELECT. Podemos realizar consultas complejas, pero empecemos con algo sencillo:

sql
SELECT * FROM participantes;

La tabla con los resultados de la consulta SELECT contendrá todos los datos insertados en la tabla participantes.

bash
| nombre | apellido | nacido_en | rol | | --------- | ----------- | --------- | ---------- | | Luis | Pérez | 1987 | jugador | | Luis | Enrique | 1970 | entrenador | | Neymar | da Silva | 1992 | jugador | | Kylian | Mbappé | 1998 | jugador | | Cristiano | Ronaldo | 1985 | jugador | | Robert | Lewandowski | 1988 | jugador | | Lionel | Messi | 1987 | jugador |

El asterisco * especifica que queremos que devuelva todas las columnas de la tabla a consultar en el resultado.

En su lugar, podríamos realizar una consulta seleccionando solo algunas columnas.

sql
SELECT nombre, rol FROM participantes;

☝🏻 Tip: Es recomendable seleccionar sólo las columnas que necesitemos. Al seleccionar solo las columnas necesarias, ayudamos a que el servidor tenga que sólo los datos que vamos a necesitar. Esto es relevante en casos en los que tienes tablas muchas columnas.

Este es el resultado:

bash
| nombre | rol | | --------- | ---------- | | Luis | jugador | | Luis | entrenador | | Neymar | jugador | | Kylian | jugador | | Cristiano | jugador | | Robert | jugador | | Lionel | jugador |

WHERE Filtrado de datos

Cuando tenemos una tabla con muchos registros lo habitual es querer extraer sólo las filas que son de nuestro interés. Para ello podemos especificar una expresión que filtra y devuelve sólo los resultados que cumplan una condición usando WHERE;

Si queremos sólo los entrenadores:

sql
SELECT nombre, apellido FROM participantes WHERE rol="entrenador";
bash
| nombre | apellido | | ------ | -------- | | Luis | Enrique |

El resultado, contendrá las filas cuyo valor de la columna rol sea entrenador.

Referencias