Знам, че този въпрос е oooolllllld и моето решение може би е твърде сложно, но това е любимият ми вид решение!
Както и да е, трябваше да направя същото и го накарах да работи по следния начин:
-- 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;
Един от тези дни наистина трябва да напиша любовен сонет към клаузата WITH на PostgreSQL ...