sql >> Databasteknik >  >> RDS >> PostgreSQL

VÄLJ från en tabell, INSERT i två andra tabeller baserat på villkor

Du behöver ingen markör för detta, du behöver inte plpgsql, du behöver inte ens en datamodifierande CTE vilket skulle tillåta dig att göra det i en enda SQL-sats.

Kör bara två vanliga INSERT uttalanden . Lägg dem i en transaktion om du vill se till att allt eller inget tillämpas:

BEGIN;

INSERT INTO B (col1, col2)
SELECT col1, col2
FROM   A
WHERE  col_cond = 'something';

INSERT INTO C (col1, col2)
SELECT col1, col2
FROM   A
WHERE  col_cond IS DISTINCT FROM 'something';

COMMIT;


  1. Skapa en databas i molnwebbplatser

  2. Felkod:1411. Felaktigt datetime-värde:'0000-00-00' för funktionen str_to_date

  3. Hur väljer man mysql rad-ID för WHERE-klausulen på UPDATE, INSERT, DELETE via php?

  4. Extrahera den första numeriska delen av fältet