我有下表:
b
是否可以编写将返回的select语句:
column_name | a | b
--------------------
a | 0 | 1
--------------------
b | 2 | 3
(我想根据column_name中指定的名称选择一列)
诀窍是我不知道我将拥有多少列以及它们的名称(column_name列除外)
我无法创建临时表,函数等。是的,它是我大学SQL课程任务的一部分,仍然不是任务本身,所以我相信我可以在这里寻求帮助。
答案 0 :(得分:1)
select case when column_name='b' then b else a end
from ...
基本上?它不仅仅是几个专栏,而且非常难以理解。
答案 1 :(得分:0)
您可以使用postgresql json数据类型(及其相关功能):
select row_to_json(table_name)->>(row_to_json(table_name)->>'column_name') from table_name;