【发布时间】:2020-03-10 16:03:25
【问题描述】:
我有一个相当简单的查询,它返回一个结果集,我不仅想对它进行分组和计数,而且还想将结果转换为列名(这是在 db2 中)
select t1.user,t2.category,t2.color,t2.store_number
from table1 t1
inner join table2 t2
ON t1.store_number = t2.store_number;
返回:
user | category | color | store_number
--------------------------------------------
12 A 'blue' 123
12 A 'blue' 123
12 A 'blue' 456
12 A 'blue' 456
12 A 'blue' 456
12 A 'blue' 123
12 A 'blue' 123
12 A 'blue' 456
12 A 'blue' 123
12 A 'blue' 789
从技术上讲,这将导致:
user | store_number | count
------------------------------
12 123 5
12 456 4
12 789 1
但是我怎样才能把查询结果变成这样:
user | 123 | 456 | 789
---------------------------
12 5 4 1
所以商店编号是列名,计数是数据。我怎样才能正确地做到这一点?
【问题讨论】: