viernes, 3 de julio de 2026

🐘 Actualizar Datos en PostgreSQL con UPDATE

Hasta ahora hemos aprendido a:

  • Crear tablas (CREATE TABLE)

  • Insertar registros (INSERT)

  • Consultar información (SELECT)

Sin embargo, en aplicaciones reales los datos cambian constantemente. Un empleado puede cambiar de departamento, un producto puede cambiar de precio o un cliente puede actualizar su información.

Para modificar registros existentes utilizamos la instrucción:

UPDATE


🧠 ¿Qué es UPDATE?

La instrucción UPDATE permite modificar uno o varios registros existentes en una tabla.

Sintaxis general:

UPDATE nombre_tabla

SET columna1 = valor1,

columna2 = valor2

WHERE condicion;

Donde:

  • UPDATE indica la tabla a modificar.

  • SET especifica los nuevos valores.

  • WHERE define qué registros serán actualizados.


⚠️ Importancia de la cláusula WHERE

La cláusula WHERE suele ser la parte más importante de un UPDATE.

Si la omites, PostgreSQL actualizará todos los registros de la tabla.

Por ejemplo:

UPDATE empleados

SET salario = 30000;

Esto modificará el salario de todos los empleados.

Por esta razón, siempre es recomendable revisar cuidadosamente la condición WHERE.


🏗️ Ejemplo Completo

Paso 1: Crear una tabla

Crearemos una tabla de empleados.

CREATE TABLE empleados (

id INTEGER,

nombre VARCHAR(100),

departamento VARCHAR(100),

salario NUMERIC(10,2),

activo BOOLEAN,

fecha_ingreso DATE

);


Paso 2: Insertar 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'

);

``


Paso 3: Consultar la información inicial

SELECT *

FROM empleados;

Resultado:

id | nombre      | departamento   | salario  | activo

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

1  | Juan Pérez  | Tecnología     | 25000.00 | true

2  | Ana López   | Finanzas       | 32000.00 | true

3  | Carlos García   | Recursos Humanos   | 28000.00 | false


✏️ Actualizar una columna

Supongamos que Juan recibió un aumento salarial.

UPDATE empleados

SET salario = 27000.00

WHERE id = 1;


Verificar el cambio

SELECT *

FROM empleados

WHERE id = 1;

Resultado:

id | nombre  | departamento | salario  | activo

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

1  | Juan Pérez  | Tecnología   | 27000.00 | true

``


✏️ Actualizar varias columnas

También podemos modificar varias columnas en una sola sentencia.

Supongamos que Carlos volvió a trabajar en la empresa y fue transferido al departamento de Tecnología.

UPDATE empleados

SET activo = TRUE,

departamento = 'Tecnología'

WHERE id = 3;


Consultar el registro actualizado

SELECT *

FROM empleados

WHERE id = 3;

Resultado:

id | nombre      | departamento | salario  | activo

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

3  | Carlos García   | Tecnología   | 28000.00 | true


🔍 Consultar registros usando WHERE

La cláusula WHERE permite recuperar únicamente los registros que cumplen una condición.

Por ejemplo, consultar un empleado específico:

SELECT *

FROM empleados

WHERE id = 2;


Consultar empleados del área de Tecnología:

SELECT *

FROM empleados

WHERE departamento = 'Tecnología';

Resultado:

id | nombre      | departamento

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

1  | Juan Pérez  | Tecnología

3  | Carlos García   | Tecnología


Consultar empleados activos:

SELECT *

FROM empleados

WHERE activo = TRUE;


🧪 Actualización de múltiples registros

También podemos actualizar varios registros simultáneamente.

Por ejemplo, aumentar el salario de todos los empleados de Tecnología.

UPDATE empleados

SET salario = 30000.00

WHERE departamento = 'Tecnología';


Consultar los registros actualizados:

SELECT *

FROM empleados

WHERE departamento = 'Tecnología';

Resultado:

id | nombre      | departamento | salario

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

1  | Juan Pérez  | Tecnología   | 30000.00

3  | Carlos García   | Tecnología   | 30000.00


🎯 Actualizar valores de tipo fecha

También es posible actualizar fechas.

UPDATE empleados

SET fecha_ingreso = '2026-05-01'

WHERE id = 2;

Consultar:

SELECT *

FROM empleados

WHERE id = 2;


💡 Buenas prácticas

Revisa primero con SELECT

Antes de ejecutar un UPDATE, verifica los registros afectados.

Por ejemplo:

SELECT *

FROM empleados

WHERE departamento = 'Tecnología';

Después:

UPDATE empleados

SET salario = 30000.00

WHERE departamento = 'Tecnología';


Utiliza siempre WHERE cuando sea posible

✅ Correcto

UPDATE empleados

SET salario = 35000.00

WHERE id = 1;

⚠️ Cuidado

UPDATE empleados

SET salario = 35000.00;

Este último modificará toda la tabla.


Verifica el resultado después del UPDATE

Una práctica común es ejecutar inmediatamente un SELECT.

SELECT *

FROM empleados

WHERE id = 1;

De esta forma puedes confirmar que el cambio se realizó correctamente.


✅ Conclusión

La instrucción UPDATE permite modificar información existente en una tabla. Es una de las operaciones fundamentales de SQL y se utiliza constantemente en aplicaciones reales.

Los conceptos más importantes son:

  • UPDATE modifica registros existentes.

  • SET indica los nuevos valores.

  • WHERE define qué registros se actualizarán.

  • Es posible actualizar una o varias columnas a la vez.

  • Siempre es recomendable validar los registros afectados con un SELECT antes y después de la actualización.


No hay comentarios:

Publicar un comentario