按照不包含在group by子句中的列排序

时间:2012-08-15 19:23:00

标签: sql sql-server

这是我的数据集:

myID    MemberID      SourceID    Acuity    
1       5             3           2       
2       5             3           1       
3       5             3           2      
4       5             3           1  

我需要为每个不同的MemberID,SourceID和Acuity组合返回一个数据集。但我需要通过myID订购。我将其插入到不同的表中,并且需要以正确的顺序插入行。我想要的预期结果是:

MemberID      SourceID    Acuity    
5             3           2       
5             3           1       

问题是我无法通过myID进行排序,除非它包含在group by子句中,因此结果是相反的,因为它默认按每个列排序。如何通过myID获得预期的结果和订单?

1 个答案:

答案 0 :(得分:2)

您的问题不明确,因为有多个行具有不同的ID。您可以按最低身份订购,但是:

select MemberID, SourceID, Acuity
from your_table
group by MemberID, SourceID, Acuity
order by min(myID)