我在teradata sql助手中有一个看起来像这样的表:
Software Name Employee
Word Bob
Excel Bob
Word Kim
Excel Kim
PowerPoint Bob
我想创建它以便每个软件只有1行,并且每个员工根据他们是否拥有软件以二进制1或0存储。决赛桌应如下所示:
Software Name Bob Kim
Word 1 1
Excel 1 1
PowerPoint 1 0
我正在使用Teradata 15.10,但由于Terdata 15.10不支持PIVOT功能,所以我无法弄清楚该怎么做。
答案 0 :(得分:1)
只需使用条件聚合:
select software_name,
sum(case when employee = 'Bob' then 1 else 0 end) as Bob,
sum(case when employee = 'Kim' then 1 else 0 end) as Kim
from t
group by software_name;