我有一个表,我想从中删除一系列行,但列表是可变的(并且是硬编码的),所以我想定义一个辅助列表。 我知道我可以做到这一点
DELETE FROM table WHERE id IN (1, 4, 6, 7)
但问题是我是否可以定义一个名为 list 的变量,就像我在 Java 或 Python 中所做的那样。
DEFINE list (1, 4, 6, 7)
或类似的东西。
最佳答案
尝试使用 VALUES,例如:
t=# with aux_list(v) as (values (1),(4),(6),(7))
select * from generate_series(1,9,1) g where g in (select v from aux_list);
g
---
1
4
6
7
(4 rows)
关于postgresql 创建辅助列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45411039/