在sql server 2008中将列数据显示为标题
我有一张像这样的桌子:在sql server 2008中将列数据显示为标题,sql,sql-server,sql-server-2008,Sql,Sql Server,Sql Server 2008,我有一张像这样的桌子: ------------------- id class name sub ------------------------ 1 mca aditya network 2 mca abhishek daa 3 mca akhilesh algorithm 4 btech ram cs 5 btech shyam ds 6 btech anand client/server 7 mb
-------------------
id class name sub
------------------------
1 mca aditya network
2 mca abhishek daa
3 mca akhilesh algorithm
4 btech ram cs
5 btech shyam ds
6 btech anand client/server
7 mba furqan os
8 mba arvind marketing
9 mba aayush hr
我想要一个如下所示的结果集:
----------------
class name sub
------------------------
mca aditya network
abhishek daa
akhilesh algorithm
btech ram cs
shyam ds
anand client/server
mba furqan os
arvind marketing
aayush hr
我认为您最好在UI/显示层中处理这个问题,但是如果您需要在SQL 2008中执行查询,可以使用with
我不确定你要的是哪种类型/订单。您的示例似乎仍然是按Id排序的。如果需要,您可以将Id列添加到
有序CTE
中,然后在查询结束时添加按o.Id ASC排序。Adam的答案会起作用,但他答案中最正确的部分是
您最好在UI/显示层中处理此问题
坦率地说,你想做的是错的。例如,下面说,aditya
有classmca
,但是abhishek
和akhilesh
没有class
class name sub
---------------------
mca aditya network
abhishek daa
akhilesh algorithm
btech ram cs
shyam ds
anand client/server
abhishek
和akhilesh
没有职业是真的吗?当然不是
因此,如果我有一个调用此存储过程或视图并查看此结果集的应用程序,我如何知道shyam属于哪个类?你不能说“这是btech,因为这是最后一个提到的类”,因为你怎么知道结果的查看顺序?您的查询中没有排序依据。我以前至少见过一个类似的问题。当我这样做时,看起来OP在这两种情况下都希望使用SQL来开发报表。我怀疑这将被打印出来并展示给管理层,但这只是一个猜测。
class name sub
---------------------
mca aditya network
abhishek daa
akhilesh algorithm
btech ram cs
shyam ds
anand client/server