【发布时间】:2013-08-31 22:27:16
【问题描述】:
我有一个表,其中的数据如下所示:
data_type, value
World of Warcraft, 500
Quake 3, 1500
Quake 3, 1400
World of Warcraft, 1200
Final Fantasy, 100
Final Fantasy, 500
我想要做的是在单个语句中选择每个值的最大值。我知道我可以轻松地做类似的事情
select data_type, max(value)
from table
where data_type = [insert each data type here for separate queries]
group by data_type
但我希望它显示的是
select data_type,
max(value) as 'World of Warcraft',
max(value) as 'Quake 3',
max(value) as 'Final Fantasy'
所以我在一个语句中得到了每个的最大值。我该怎么做呢?
【问题讨论】:
-
这和 MySQL 有什么关系?
-
你提出的初步解决方案是一个单一的陈述。您的意思是单个结果row?如果是这样,你有固定数量的 3 种类型,还是有更多,可能是动态的?
标签: sql postgresql pivot crosstab