typestar

Upsert en SQL

INSERT ON CONFLICT escribe una fila o actualiza la que ya estaba.

INSERT INTO daily_counts (day, hits)
VALUES ('2026-07-29', 1)
ON CONFLICT (day)
DO UPDATE SET
    hits = daily_counts.hits + excluded.hits;

INSERT INTO tags (name)
VALUES ('sql')
ON CONFLICT (name)
DO NOTHING;

Cómo funciona

  1. ON CONFLICT nombra la restricción que se violaría.
  2. excluded se refiere a la fila que intentaste insertar.
  3. DO NOTHING, en cambio, vuelve el insert idempotente.

Palabras clave y builtins usados aquí

El intento, en números

Líneas
10
Caracteres a escribir
206
Tokens
50
Ritmo de tres estrellas
95 tpm

Al ritmo de tres estrellas de 95 tokens por minuto, este intento toma unos 32 segundos.

Escribe este fragmento

Paso 3 de 5 en Transacciones; paso 13 de 17 en Planes y rendimiento.

← Anterior Siguiente →