为简单起见,假设我的表有一列,其中total是一个整数。在这里,我希望foo子查询将总数增加1,并将数值减1,从而产生相同的起始值。但是,当我运行此查询时,总值会递增。为什么会这样,我该如何解决这个问题?
WITH
foo AS (
UPDATE table SET total = total - 1 WHERE id = 10
RETURNING *
),
bar AS (
UPDATE table SET total = total + 1 WHERE id = 10
RETURNING *
)
SELECT * FROM table