postgresql 创建辅助列表

标签 postgresql

我有一个表,我想从中删除一系列行,但列表是可变的(并且是硬编码的),所以我想定义一个辅助列表。 我知道我可以做到这一点

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/

相关文章:

sql - 如果子集组合返回空结果,查询获取超集?

sql - Postgresql更新字符串,前后添加字符

postgresql - 如何通过 Amazon EC2 将 postgresql 数据移动到 Ubuntu 上的另一个目录?

postgresql - 什么时候应该使用 postgresql 10 声明式分区功能?

postgresql - Sequelize : Query with order by a field in JSONB object

sql - 拆分和合并表列的值

postgresql - Postgres 全文搜索未返回预期结果

sql - 如何为整个表分配列并在postgresql中添加事件标志

postgresql - 创建临时表,当我结束事务时该表会自行删除

ruby-on-rails - Lion、RVM、Postgresql 和 PG Gem