UPDATE en SQL

La instrucción UPDATE en SQL modifica filas existentes en una tabla. Indicas qué columnas cambian con SET y qué filas afecta con WHERE .

La función UPDATE forma parte del vocabulario SQL para cálculos y transformaciones. No modifica los datos guardados: calcula un valor nuevo en cada fila del resultado.

En analítica y reporting suele usarse dentro de un SELECT junto con alias (AS) para que la columna resultante sea legible.

En proyectos reales combinarás funciones de fecha con WHERE para filtrar periodos (mes actual, último trimestre, etc.).

La función UPDATE forma parte del vocabulario SQL para cálculos y transformaciones. No modifica los datos guardados: calcula un valor nuevo en cada fila del resultado.

En analítica y reporting suele usarse dentro de un SELECT junto con alias (AS) para que la columna resultante sea legible.

En proyectos reales combinarás funciones de fecha con WHERE para filtrar periodos (mes actual, último trimestre, etc.).

Sin WHERE , el UPDATE aplica a todas las filas — suele ser un error. En el editor usamos RETURNING para ver qué filas se han actualizado.


Sintaxis UPDATE en SQL

La sintaxis indica el orden de argumentos y palabras clave. Copia la plantilla y sustituye nombres de columnas o literales entre comillas simples.

Plantilla

    UPDATE tabla
SET columna1 = valor1, columna2 = valor2
WHERE condicion;
  

Ejemplo UPDATE en SQL

Suma 10 unidades a N_Ventas del cliente con ID_Cliente = 4 :

UPDATE con expresión en SET

    UPDATE Clientes
SET N_Ventas = N_Ventas + 10
WHERE ID_Cliente = 4
OUTPUT inserted.Nombre_Cliente, inserted.N_Ventas;
  
Abrir en editor

Resultado: Carlos Ruiz pasa de 45 a 55 ventas.


Tabla demo para UPDATE

Base de datos de demostración: Clientes

Observa qué columnas devuelve la consulta y cómo se nombran con AS. Ese alias es lo que verás en la cuadrícula del editor.

ID_Cliente Nombre_Cliente Ciudad Pais N_Ventas
1Ana GarcíaMadridEspaña120
2Luis PérezBarcelonaEspaña85
3María LópezValenciaEspaña200
4Carlos RuizMadridEspaña45
5Elena TorresSevillaEspaña67
6John SmithLondonUK150
7Marie DuboisParisFrancia92
8Hans MüllerBerlinAlemania78
9Luca RossiRomaItalia110
10Sofia AndersStockholmSuecia55
Tabla Clientes en el editor SQL (10 filas). La usamos en la mayoría de ejemplos de esta fase.

UPDATE en la tabla Productos

Aumenta un 5 % el precio de la categoría Bebidas ( ID_Categoria = 1 ):

Subir precios de bebidas

    UPDATE Productos
SET Precio = ROUND(Precio * 1.05, 2)
WHERE ID_Categoria = 1
OUTPUT inserted.Nombre_Producto, inserted.Precio;
  
Abrir en editor

UPDATE de texto con WHERE

Cambiar ciudad de un cliente

    UPDATE Clientes
SET Ciudad = 'Málaga'
WHERE ID_Cliente = 5
OUTPUT inserted.Nombre_Cliente, inserted.Ciudad;
  
Abrir en editor

Resumen UPDATE

  • UPDATESETWHERE modifica filas que cumplen la condición.
  • Sin WHERE se actualizan todas las filas.
  • Puedes usar expresiones en SET ( columna + 10 , Precio * 1.05 ).
  • Siguiente paso: DELETE para eliminar filas.

Cómo practicar en el editor

1. Pulsa Pruébalo tú mismo en un ejemplo.
2. Cambia un filtro, columna o literal.
3. Ejecuta y compara el resultado con la tabla de ejemplo.


Practica con ejercicios

Repasa la lección con consultas sobre Clientes (Elena Torres, Valencia…) y Productos (pera, mango, fresa) de nuestra base demo.

Ejercicio: Actualizar ventas de un cliente

Practica UPDATE con WHERE y OUTPUT. Usa la tabla Clientes de la demo (Elena Torres, Valencia…).

Consulta

    UPDATE Clientes
SET N_Ventas = N_Ventas + 10
WHERE ID_Cliente = 4 OUTPUT inserted.Nombre_Cliente, inserted.N_Ventas;
  
Abrir en editor

Ejercicio: Subir precios de una categoría

UPDATE en Productos con expresión en SET. Usa la tabla Clientes de la demo (Elena Torres, Valencia…).

Consulta

    UPDATE Productos
SET Precio = ROUND(Precio * 1.05, 2)
WHERE ID_Categoria = 1 OUTPUT inserted.Nombre_Producto, inserted.Precio;
  
Abrir en editor

Ejercicio: Cambiar la ciudad de un cliente

UPDATE de una columna de texto con filtro por ID. Usa la tabla Clientes de la demo (Elena Torres, Valencia…).

Consulta

    UPDATE Clientes
SET Ciudad = 'Málaga'
WHERE ID_Cliente = 5 OUTPUT inserted.Nombre_Cliente, inserted.Ciudad;
  
Abrir en editor

Cómo practicar

1. Pulsa Ejecutar aquí en el bloque.
2. Modifica la consulta (filtro, columnas…).
3. O abre el editor para más espacio.

Comprueba lo aprendido

Responde 2–3 preguntas sobre esta lección. Verás ✓ en verde si aciertas o ✗ en rojo si fallas.