【发布时间】:2020-04-18 19:25:08
【问题描述】:
是否可以在 psql 中过滤列名本身?我想在单独的模式 a la(伪代码)中生成原始表的有限版本(有几百列):
create table why.am_i_doing_this
select *
from original.table
where column_name_of_the_table not in ('column_1', 'column_2' );
【问题讨论】:
-
你能提供样本数据和想要的结果吗?不清楚你真正想做什么。
-
假设我有一个表 schema_1.original_table(A 文本、B 文本、C 文本)。我想运行类似 create table schema_2.new_table as select * from schema_1.original_table where column_name NOT IN (A, B);我基本上是想看看是否有办法从原始表中“取消选择”我不感兴趣的列,而不是在单个创建表查询中放下我感兴趣的所有 300 多个列名如果这是有道理的。
-
据我所知,在 Postgres 中没有简单的方法可以做到这一点。
-
我想的也差不多。在过去一两个小时的大部分时间里,一直在摆弄它。你知道一个不那么简单的方法会是什么样子吗?
-
毕竟很简单...
标签: sql postgresql dynamic-sql