我试图通过将它们限制为n个记录来更新客户表中的记录,但是当我使用offset和limit关键字时出现错误。
我放在哪里
offset 0 limit 1
在更新语句子查询中,因为子查询类似于:
update customer set name = 'sample name' where customer_id in (142, 143, 144, 145 offset 0 limit 1);
当我尝试执行上述更新语句时,出现错误:
错误:“偏移”处或附近的语法错误
注意:限制不必为1,它可以是任何数字,并且偏移量也是如此
答案 0 :(得分:0)
offset
和limit
用于行,而不是列表。
您可以转换in()
子句以使用子查询,该子查询从每个输入中返回一行
更新客户
set name = 'sample name'
where customer_id in (select unnest(array[142, 143, 144, 145]) offset 0 limit 1);