viernes, 3 de julio de 2026

🐘 Consultar Datos en PostgreSQL con SELECT

Hasta ahora hemos aprendido a crear bases de datos, esquemas, tablas e insertar información. El siguiente paso es aprender a consultar los datos almacenados.

Para ello utilizaremos una de las instrucciones más importantes de SQL:

SELECT

Prácticamente cualquier aplicación que utilice una base de datos ejecuta consultas SELECT para recuperar información.


🧠 ¿Qué es SELECT?

La instrucción SELECT permite leer datos de una o varias tablas.

Sintaxis básica:

SELECT columnas

FROM tabla;

Por ejemplo:

SELECT nombre

FROM empleados;

Esta consulta devolverá únicamente la columna nombre.


🏗️ Crear una tabla de ejemplo

Para entender mejor las consultas, primero crearemos una tabla sencilla.

CREATE TABLE empleados (

id INTEGER,

nombre VARCHAR(100),

departamento VARCHAR(100),

salario NUMERIC(10,2),

activo BOOLEAN,

fecha_ingreso DATE

);


📝 Insertar datos de prueba

Ahora agregaremos algunos registros.

INSERT INTO empleados (

id,

nombre,

departamento,

salario,

activo,

fecha_ingreso

)

VALUES

(

1,

'Juan Pérez',

'Tecnología',

25000.00,

TRUE,

'2026-01-15'

),

(

2,

'Ana López',

'Finanzas',

32000.00,

TRUE,

'2026-02-01'

),

(

3,

'Carlos García',

'Recursos Humanos',

28000.00,

FALSE,

'2026-03-10'

),

(

4,

'María Rodríguez',

'Tecnología',

35000.00,

TRUE,

'2026-04-05'

);

La tabla ahora contiene cuatro registros.


🔍 Consultar todas las columnas

La forma más sencilla de recuperar información es mediante el asterisco (*).

SELECT *

FROM empleados;

Resultado aproximado:

id | nombre       | departamento   | salario  | activo | fecha_ingreso

----+------------------+--------------------+----------+--------+--------------

  1 | Juan Pérez   | Tecnología     | 25000.00 | true   | 2026-01-15

  2 | Ana López    | Finanzas       | 32000.00 | true   | 2026-02-01

  3 | Carlos García | Recursos Humanos   | 28000.00 | false  | 2026-03-10

  4 | María Rodríguez  | Tecnología     | 35000.00 | true   | 2026-04-05


📋 Consultar columnas específicas

No siempre necesitamos todas las columnas.

Por ejemplo:

SELECT nombre,

    salario

FROM empleados;

Resultado:

nombre        | salario

-------------------+----------

Juan Pérez    | 25000.00

Ana López     | 32000.00

Carlos García | 28000.00

María Rodríguez   | 35000.00


🔄 Cambiar el orden de las columnas

Las columnas aparecerán en el mismo orden en que se indiquen en el SELECT.

SELECT salario,

    nombre

FROM empleados;

Resultado:

salario  | nombre

----------+-----------------

25000.00 | Juan Pérez

32000.00 | Ana López

28000.00 | Carlos García

35000.00 | María Rodríguez


✍️ Asignar alias a las columnas

Los alias permiten cambiar temporalmente el nombre mostrado en el resultado.

Se utiliza la palabra clave AS.

SELECT nombre AS empleado,

    salario AS sueldo

FROM empleados;

Resultado:

empleado      | sueldo

-------------------+----------

Juan Pérez    | 25000.00

Ana López     | 32000.00

Carlos García | 28000.00

María Rodríguez   | 35000.00


🔎 Consultar una sola columna

También es posible recuperar únicamente una columna.

SELECT departamento

FROM empleados;

Resultado:

departamento

--------------

Tecnología

Finanzas

Recursos Humanos

Tecnología

Observa que los valores pueden repetirse.


📊 Consultar varias columnas

SELECT id,

    nombre,

    departamento

FROM empleados;

Resultado:

id | nombre        | departamento

----+-------------------+--------------

1  | Juan Pérez    | Tecnología

2  | Ana López     | Finanzas

3  | Carlos García | Recursos Humanos

4  | María Rodríguez   | Tecnología


🎯 El orden de las filas no está garantizado

Si ejecutas:

SELECT *

FROM empleados;

PostgreSQL normalmente devolverá las filas en el orden en que fueron insertadas, pero esto no está garantizado.

Cuando necesites un orden específico deberás utilizar ORDER BY, tema que veremos más adelante.


📦 Consultar tablas de un esquema

Supongamos que la tabla fue creada dentro del esquema recursos_humanos.

CREATE TABLE recursos_humanos.empleados (

id INTEGER,

nombre VARCHAR(100)

);

La consulta se realizaría utilizando la notación:

SELECT *

FROM recursos_humanos.empleados;


🧪 Ejemplo completo

Este ejemplo muestra el flujo completo desde la creación de la tabla hasta la consulta de los datos.

Paso 1: Crear la tabla

CREATE TABLE productos (

codigo INTEGER,

nombre VARCHAR(100),

categoria VARCHAR(100),

precio NUMERIC(10,2),

disponible BOOLEAN,

fecha_alta DATE

);

Paso 2: Insertar registros

INSERT INTO productos (

codigo,

nombre,

categoria,

precio,

disponible,

fecha_alta

)

VALUES

(

1001,

'Laptop',

'Computadoras',

18500.00,

TRUE,

'2026-06-01'

),

(

1002,

'Monitor',

'Periféricos',

4200.00,

TRUE,

'2026-06-02'

),

(

1003,

'Teclado',

'Accesorios',

750.00,

FALSE,

'2026-06-03'

);

Paso 3: Consultar todos los registros

SELECT *

FROM productos;

Paso 4: Consultar solo algunas columnas

SELECT nombre,

    precio

FROM productos;


💡 Buenas prácticas

Evita usar SELECT * en aplicaciones

Durante el aprendizaje está bien utilizar:

SELECT *

FROM empleados;

Pero en aplicaciones reales suele ser mejor indicar explícitamente las columnas necesarias:

SELECT nombre,

    salario

FROM empleados;

Esto hace las consultas más claras y eficientes.

Utiliza alias descriptivos

SELECT nombre AS empleado,

    salario AS sueldo

FROM empleados;

Mejora la legibilidad de los resultados y reportes.

Mantén formato consistente

Una práctica común es escribir cada columna en una línea distinta:

SELECT id,

    nombre,

    salario

FROM empleados;

Las consultas son más fáciles de leer y mantener.


✅ Conclusión

La instrucción SELECT es la base de cualquier consulta en PostgreSQL. Con ella podemos recuperar una o varias columnas, visualizar todos los registros de una tabla y presentar los datos de diferentes formas.

Los conceptos más importantes de este capítulo son:

  • SELECT recupera información.

  • FROM indica la tabla origen.

  • SELECT * devuelve todas las columnas.

  • Se pueden consultar columnas específicas.

  • Las columnas pueden renombrarse mediante alias (AS).

  • Las tablas ubicadas en esquemas se consultan mediante esquema.tabla.


No hay comentarios:

Publicar un comentario