sql >> Databáze >  >> RDS >> PostgreSQL

Získejte počet záznamů ovlivněných INSERT nebo UPDATE v PostgreSQL

Vím, že tato otázka je oooolllllld a moje řešení je pravděpodobně příliš složité, ale toto je můj oblíbený druh řešení!

Každopádně jsem musel udělat to samé a fungovalo to takto:

-- Get count from INSERT
WITH rows AS (
    INSERT INTO distributors
        (did, dname)
    VALUES
        (DEFAULT, 'XYZ Widgets'),
        (DEFAULT, 'ABC Widgets')
    RETURNING 1
)
SELECT count(*) FROM rows;

-- Get count from UPDATE
WITH rows AS (
    UPDATE distributors
    SET dname = 'JKL Widgets'
    WHERE did <= 10
    RETURNING 1
)
SELECT count(*) FROM rows;

Jednoho z těchto dnů se opravdu musím dostat k tomu, abych napsal milostný sonet do klauzule WITH PostgreSQL ...



  1. Konfigurace skupin dostupnosti AlwaysOn na serveru SQL Server

  2. MariaDB JSON_DEPTH() Vysvětleno

  3. Porovnejte varchar s char

  4. Ukládání dat v MySQL jako JSON