Saltar al contenido

Elegir columnas

SQL · Unidad 1: Primeras consultas

La tienda va a mandar un aviso y solo necesita los nombres. Con * llegarían también la ciudad y la edad de cada persona, que nadie pidió.

En vez de *, escribe la columna que quieres. Salen las mismas filas, con ese único dato.

SELECT nombre
FROM clientes;

Devuelve

nombre
Ana
Luis
Sofía
Mateo
Valeria
Diego
Camila
Bruno

Un precio sin el nombre de su producto no le sirve a nadie. Para ver varias columnas, sepáralas con comas.

Después de la última no va coma: lo que sigue es el FROM.

SELECT nombre, precio
FROM productos;

Devuelve

nombreprecio
Teclado45.5
Ratón19.9
Monitor189
Cable5.25
Portátil899
Tableta320
Audífonos59.9
Parlante74

Las columnas salen en el orden en que las pides, no en el que tiene la tabla. El resultado lo diseñas tú.

En clientes, nombre va antes que edad. Aquí salen al revés porque así se pidió.

SELECT edad, nombre
FROM clientes;

Devuelve

edadnombre
34Ana
27Luis
41Sofía
19Mateo
52Valeria
27Diego
NULLCamila
38Bruno

SELECT * sirve para asomarse a una tabla. En una consulta que se va a quedar, como la de un reporte, nombra las columnas.

La razón es que las tablas cambian. Si mañana alguien agrega una columna, tu * empieza a traerla sin que nadie lo haya decidido.

Cuando las columnas son muchas, se pone una por línea, con dos espacios delante. Se lee de arriba abajo, y quitar o agregar una es tocar una sola línea.

A SQL también le da igual si escribes SELECT o select. Las mayúsculas son para quien lee: separan de un vistazo las palabras de SQL de tus nombres.

select nombre,
  ciudad,
  edad
from clientes;

Devuelve

nombreciudadedad
AnaLima34
LuisBogotá27
SofíaNULL41
MateoQuito19
ValeriaLima52
DiegoCusco27
CamilaBogotáNULL
BrunoLima38

Si pides una columna que la tabla no tiene, la consulta no corre. El mensaje es no such column (no existe esa columna), con el nombre que SQL no encontró.

Este error sí señala la palabra exacta. Casi siempre es una letra de más o una columna de otra tabla.

Ejercicios de esta lección

Se hacen en la app, que los corrige al momento y explica por qué.

  1. 1. Completa el código

    ¿A qué ciudades manda paquetes la tienda? Completa para ver solo ese dato.

    SELECT ___
    FROM clientes;
  2. 2. Opción múltiple

    La tienda tiene 8 productos y alguien pide solo los precios. ¿Qué devuelve esta consulta?

    SELECT precio
    FROM productos;
  3. 3. Completa el código

    En el almacén, cada caja va marcada con el número de su producto. Completa para ver ese número junto al nombre.

    SELECT id___ nombre
    FROM productos;
  4. 4. Ordena las líneas

    La tienda quiere saber qué edad tienen sus clientes. Ordena para ver el nombre y la edad de cada uno. Sobran dos líneas.

  5. 5. Encuentra el bug

    Para armar los letreros del estante hacen falta el nombre y la categoría de cada producto. SQL se queja de la palabra FROM. ¿En qué línea está el error de verdad?

    SELECT nombre, categoria,
    FROM productos;
  6. 6. Opción múltiple

    En la tabla productos, la columna nombre va antes que stock. En el resultado de esta consulta, ¿cuál columna queda a la izquierda?

    SELECT stock, nombre
    FROM productos;
  7. 7. Completa el código

    Quien reparte los paquetes los separa por ciudad, así que su lista se lee mejor con la ciudad primero y el nombre después. Completa.

    SELECT ___, ___
    FROM clientes;
  8. 8. Opción múltiple

    El reporte semanal de la tienda usa SELECT * FROM clientes;. Un día alguien agrega a la tabla la columna telefono. ¿Qué pasa con el reporte?

  9. 9. Ordena las líneas

    El catálogo lleva el nombre, la categoría y el precio de cada producto, en ese orden. Ordena la consulta, con una columna por línea. Sobra una línea.

  10. 10. Encuentra el bug

    Alguien quiere comparar precios por sección, con la categoría y el precio de cada producto. ¿Qué línea tiene el error?

    SELECT categoria,
      precios
    FROM productos;
  11. 11. Escribe el código

    Van a acomodar el estante por secciones. Escribe una consulta que muestre dos columnas de cada producto, primero su categoria y después su nombre.

    SELECT
    FROM productos;
Hacer esta lección

Se abre en el navegador. Es gratis y no hace falta cuenta para empezar.

Ver todas las lecciones →