sql – 操作结果以将行显示为列

前端之家收集整理的这篇文章主要介绍了sql – 操作结果以将行显示为列前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有两张桌子.
表A包含一个部门列表,共有20个.

见图

表B包含表A中每个部门至少1行,其中一些包含一些.

见图

我想要的是一个由A& A创建的第三张桌子. B基本上列出了每个部门,然后列出了全职和兼职的人数.例如,如果在表b中找到一个部门,其中只有一个完整或兼职的数字(这个例子是部门D),那么我希望表格显示0(零)而不是留空.

见图

任何人都可以就此提出建议吗?

编辑
如果其中一个部门没有例如“兼职”,这意味着他们的兼职人员数量通常为零.

解决方法

你想要一个 PIVOT
select *
from (tableb) s
pivot (Max(staffno) for employee_class in ([Full Time],[Part Time])) p

猜你在找的MsSQL相关文章