是否可以跳过 CASE WHEN postgres 中的列
Is it possible to skip column in CASE WHEN postgres
我有一个问题:
SELECT o.version, o.text, o.id
case when language=1
then o.language else [SKIP LANGUAGE COLUMN] end as language
FROM books AS o
如果 language!=1
是否可以跳过第 language
列?
所以如果 language=1 我想得到:
版本|textt|id|语言
否则:
版本|文本|id| (没有语言栏)
"Is it possible to skip column in CASE WHEN postgres?"
如果 "Skip" 你的意思是查询项目在结果集中有不同数量的列,就像@a_horse_with_no_name 评论的那样,NO.
您可以在 else 表达式中分配 null(或其他值)。
case when language=1 then o.language else null end as language
或者,如果您想要空值,则将 else 排除在外
case when language=1 then o.language end as language
如果您必须投影不同数量的列,则需要执行两个单独的查询。
我有一个问题:
SELECT o.version, o.text, o.id
case when language=1
then o.language else [SKIP LANGUAGE COLUMN] end as language
FROM books AS o
如果 language!=1
是否可以跳过第 language
列?
所以如果 language=1 我想得到:
版本|textt|id|语言
否则: 版本|文本|id| (没有语言栏)
"Is it possible to skip column in CASE WHEN postgres?"
如果 "Skip" 你的意思是查询项目在结果集中有不同数量的列,就像@a_horse_with_no_name 评论的那样,NO.
您可以在 else 表达式中分配 null(或其他值)。
case when language=1 then o.language else null end as language
或者,如果您想要空值,则将 else 排除在外
case when language=1 then o.language end as language
如果您必须投影不同数量的列,则需要执行两个单独的查询。