Sql server 表值作为表标题
查询:Sql server 表值作为表标题,sql-server,pivot,pivot-table,Sql Server,Pivot,Pivot Table,查询: select Escuser,Eslevel from WF_UserConfiguration 正在把桌子还给我,下面是: ╔═════════════════════╗ ║ Escuser Eslevel ║ ╠═════════════════════╣ ║ A000 1 ║ ║ A010 4 ║ ║ A021 3 ║ ║ ABCD 1 ║ ║ C067
select Escuser,Eslevel from WF_UserConfiguration
正在把桌子还给我,下面是:
╔═════════════════════╗
║ Escuser Eslevel ║
╠═════════════════════╣
║ A000 1 ║
║ A010 4 ║
║ A021 3 ║
║ ABCD 1 ║
║ C067 3 ║
║ C099 1 ║
║ C252 2 ║
╚═════════════════════╝
我的问题是我想得到以下输出
╔═════════════════════════════╗
║ 1 2 3 4 ║
╠═════════════════════════════╣
║ A000 C252 A021 A010 ║
║ ABCD C067 ║
║ C099 ║
╚═════════════════════════════╝
表头1、2、3和4是第一个查询结果的EsLevel值
如何获得以下结果?我是指什么查询?使用pivot的答案:
您可以在帖子中突出显示代码,然后单击带有0和1的“代码示例”按钮来格式化代码,使其可读……如果您希望我们能够阅读您的文章,请查看so编辑器的帮助:-提示:在转到新行之前键入2个空格有什么标准可以说明Escusers将属于同一行?
select
[1],
[2],
[3],
[4]
from
(
select
Escuser,
Eslevel,
Row_number() over(partition by Eslevel order by escuser asc) as r
from WF_UserConfiguration
)src
pivot
(
max(escuser)
for Eslevel in
(
[1],[2],[3],[4]
)
)p