sql >> Databasteknik >  >> RDS >> PostgreSQL

Få antalet poster som påverkas av INSERT eller UPPDATERING i PostgreSQL

Jag vet att den här frågan är oooolllllld och min lösning är utan tvekan alltför komplex, men det är min favoritlösning!

Hur som helst, jag var tvungen att göra samma sak och fick det att fungera så här:

-- 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;

En av dessa dagar måste jag verkligen komma runt för att skriva en kärlekssonnett till PostgreSQL:s WITH-klausul ...



  1. Anslutningspoolen för databasen '/data/data/msv_database.db' har inte kunnat bevilja en anslutning. Anslutningar:0 aktiva, 1 ledig, 0 tillgängliga

  2. Hur omvandlar man en MSSQL CTE-fråga till MySQL?

  3. Har T-SQL en aggregerad funktion för att sammanfoga strängar?

  4. Bästa metoder för SQL varchar-kolumnlängd