我有一个查询更新表中的行。我希望查询更新行并返回受影响的行。
目前我有
UPDATE employees SET name = 'John' RETURNING employees.*;
这很好用。但是,如果我想以指定的顺序返回受影响的行,该怎么办?像
这样的东西UPDATE employees SET name = 'John' RETURNING employees.* ORDER BY name ASC;
这不起作用。有人有个好主意吗?
答案 0 :(得分:20)
这可以使用数据修改CTE(公用表表达式)来完成:
with updated as (
UPDATE employees
SET name = 'John'
RETURNING *
)
select *
from updated
ORDER BY empname ASC;