有一个Postgres数据库和表有三个列。 数据结构在外部系统所以我不能修改它。
每个对象由三行(被列element_id——行相同的值在本专栏中代表同一个对象),例如:
key value element_id-----------------------------------status active 1name exampleNameAAA 1city exampleCityAAA 1status inactive 2name exampleNameBBB 2city exampleCityBBB 2status inactive 3name exampleNameCCC 3city exampleCityCCC 3
我想要所有的值描述每个对象(名称、状态和城市)。
对于这个示例的输出应该是:
exampleNameAAA | active | exampleCityAAA
exampleNameBBB | inactive | exampleCityBBB
exampleNameCCC | inactive | exampleCityCCC
我知道如何加入两行:
select a.value as name,
b.value as statusfrom the_table a
join the_table b
on a.element_id = b.element_id
and b."key" = 'status'where a."key" = 'name';
怎么可能加入三列?
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/31559515/viewspace-2221474/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/31559515/viewspace-2221474/