我有一个 PostgreSQL 数据库,想要根据我拥有的记录 ID 为多条记录插入相同的值。
有没有办法在 INSERT
语句中创建 WHERE
条件?例如:
insert into Customers (new-customer) values ('t') where customer_id in (list)
最佳答案
要为列表中的每个 id 插入一行,您可以使用 unnest()
生成一组行:
INSERT INTO customers(customer_id, column1)
SELECT id, 't'
FROM unnest ('{123,456,789}'::int[]) id;
如果您说错了,实际上是要更新
现有行:
UPDATE customers
SET column1 = 't'
WHERE customer_id = ANY ('{123,456,789}'::int[]);
关于sql - 根据 id 列表为多条记录插入相同的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23581079/