Ir al contenido
wannacode

SELECT: elegir columnas

En resumen: SELECT elige qué columnas devuelve una consulta y en qué orden, y AS le da a una columna otro nombre en el resultado.

Problema

La lista del boletín

La tienda envía un boletín con ofertas. Tu compañera de marketing necesita solo los nombres y los correos de los clientes.

SELECT * da todo: id, ciudad, fecha de registro. Con 20 clientes borrará el resto a mano. Con 200 000 y diez columnas, no lo hará.

La idea

Enumera las columnas

En lugar de *, escribe las columnas que quieres, separadas por comas:

SQLbase de datos: tienda

Las columnas salen en el orden en que las escribiste. Cámbialas de sitio y ejecuta otra vez.

Esto vale para toda consulta a partir de ahora: toma solo lo que necesitas. La base envía menos datos, y quien lea la consulta ve exactamente qué se usa.

Pruébalo

La lista de precios

Muestra solo el nombre y el precio de cada producto.

SQLbase de datos: tienda

Míralo

Una coma

Esta consulta se parece casi a la primera. Ejecútala:

SQLbase de datos: tienda
1. ¿Por qué SELECT name email FROM customers; devolvió una sola columna llamada email?

La idea

Otros nombres con AS

Una columna puede mostrarse con otro nombre. Eso se llama alias y se escribe con AS:

SQLbase de datos: tienda

Un nombre sin espacios se escribe tal cual. Si tiene espacios, ponlo entre comillas dobles. Las comillas simples en SQL son para texto; las usarás en la próxima lección.

Un alias no cambia la tabla. Solo cambia el encabezado de la columna en este resultado.

Pruébalo

Las existencias

Muestra el nombre y las existencias de los productos, pero llama a las columnas product e in_stock.

SQLbase de datos: tienda

Ejercicio

Los pedidos en breve

Para cada pedido muestra su número, su fecha y su estado, sin el cliente.

SQLbase de datos: tienda

Test

Ponte a prueba

1. ¿Qué devuelve SELECT email, name FROM customers;?
2. ¿Cuándo va un alias entre comillas dobles?
3. ¿Por qué SELECT name, price es mejor que SELECT * en un programa?

Creado por Ivo Gergov como parte de la campaña de Evo Tech por una educación accesible en programación ·