按列SSRS/SQL对分组进行自定义排序

按列SSRS/SQL对分组进行自定义排序,sql,sql-server,reporting-services,Sql,Sql Server,Reporting Services,我有一个样本数据如下 Key KeyName CustomerName CID Role 1 K1 Ram C1 Main 1 K1 Laxman C5 Child 2 K2 Shyam C2 Main 3 K3 Ram C1 Main 4 K4 Shyam Bothe C2 Ma

我有一个样本数据如下

Key KeyName CustomerName  CID      Role

1   K1      Ram           C1       Main
1   K1      Laxman        C5       Child
2   K2      Shyam         C2       Main
3   K3      Ram           C1       Main
4   K4      Shyam Bothe   C2       Main 
5   K5      Berry         C3       Child
6   K6      Berry Ping    C3       Main
Key KeyName CustomerName  CID      Role

1   K1      Ram           C1       Main
1   K1      Laxman        C5       Child
3   K3      Ram           C1       Main
2   K2      Shyam         C2       Main
4   K4      Shyam Bothe   C2       Main 
5   K5      Berry         C3       Child
6   K6      Berry Ping    C3       Main
在这里,同一客户存在于多个密钥中。我想按钥匙的顺序对重复的客户进行排序,如下所示

Key KeyName CustomerName  CID      Role

1   K1      Ram           C1       Main
1   K1      Laxman        C5       Child
2   K2      Shyam         C2       Main
3   K3      Ram           C1       Main
4   K4      Shyam Bothe   C2       Main 
5   K5      Berry         C3       Child
6   K6      Berry Ping    C3       Main
Key KeyName CustomerName  CID      Role

1   K1      Ram           C1       Main
1   K1      Laxman        C5       Child
3   K3      Ram           C1       Main
2   K2      Shyam         C2       Main
4   K4      Shyam Bothe   C2       Main 
5   K5      Berry         C3       Child
6   K6      Berry Ping    C3       Main

这不会按键的重复顺序显示输出。因此,您希望customername根据键的顺序进行排序。在这种情况下,请按CustomerName键使用order。在输出中,您可以看到键K1和K3中都存在CID“C1”。类似地,键K2和K4中都存在CID“C2”。因此,我需要将输出按客户出现的顺序排列在按键使用顺序中,由CID asc、KeyName asc执行;这里不需要显式地保留asc,因为默认情况下,排序顺序将是asc。只是为了你的理解,我保留了asc。您甚至可以尝试通过更改排序顺序来查看结果。示例:按CID desc排序,关键字asc;只要玩弄这些命令,你就会明白它是如何工作的。