我是Postgresql的新手.我的情况是我有一个表存储我的数据.数据作为一行来自文件,并作为5行保存在数据库中.我想要的是创建一个SELECT语句,它将5行再次组合成一个.
例如
id id2 id3 year code value 4 1 1 1642 radio 30 4 1 1 1642 tv 56 4 1 1 1642 cable 67 4 1 1 1642 dine 70
id id2 id3 year radio tv cable dine 4 1 1 1642 30 56 67 70
代码的值正在变为具有实际值的值的列.
这可能吗?
解决方法
你可以使用(
SQL Fiddle):
SELECT m.id,m.id2,m.id3,m.year,SUM(CASE WHEN m.code = 'radio' THEN m.value END) as radio,SUM(CASE WHEN m.code = 'tv' THEN m.value END) as tv,SUM(CASE WHEN m.code = 'cable' THEN m.value END) as cable,SUM(CASE WHEN m.code = 'dine' THEN m.value END) as dine FROM MyTable m GROUP BY m.id,m.year