我有一张类似
的表格Col1 col2 col3 col4 col5
1 5 1 4 6
1 4 0 3 7
0 1 5 6 3
1 8 2 1 5
4 3 2 1 4
脚本是
declare @t table(col1 int, col2 int, col3 int,col4 int,col5 int)
insert into @t
select 1,5,1,4,6 union all
select 1,4,0,3,7 union all
select 0,1,5,6,3 union all
select 1,8,2,1,5 union all
select 4,3,2,1,4
我希望输出是每列按升序排序,即
Col1 col2 col3 col4 col5
0 1 0 1 3
1 3 1 1 4
1 4 2 3 5
1 5 2 4 6
4 8 5 6 7
怎么做?
提前致谢
答案 0 :(得分:3)
排序顺序正确。
首先按col1排序,然后按col2排序(在col1中的任何重复项内),等等......
注意col2中的相同值,col2是按升序排列的:
Col1 col2 col3 col4 col5
1 4 0 3 7
1 5 1 4 6
1 8 2 1 5
这是另一个例子。想象一下,我们有一个Lastname, Firstname
列表:
Smith, Ian
Smith, John
Smith, Dave
Smith, Jane
Green, Jim
按Lastname ASC, Firstname ASC
排序:
Green, Jim
Smith, Dave
Smith, Ian
Smith, Jane
Smith, John
答案 1 :(得分:3)
列不独立于行 - 排序顺序适用于整行,而不适用于单个列。一行中的所有数据都被理解为相关 - 您无法单独切片/切块/重新排列违反此行的数据。
你不能在当前的结构中做你想做的事。