如果我有一个名为[部件]的列[PARTID] [长度]表,[IDNumber中],以及和数据:SQL SELECT DISTINCT前2
[PartID] [IDNumber] [Length]
1 Test1 50
2 Test1 60
3 Test2 50
4 Test3 70
我怎么可以只选择前2条记录具有不同的IDNumber?搜索了一下后,我一直无法找到一个我想要的查询。我想结果是这样的:
[PartID] [IDNumber] [Length]
1 Test1 50
3 Test2 50
我现在拥有的一切:
Select distinct top 2
[PartID],
[IDNumber],
[Length]
from
[Part]
澄清,PARTID实际上是一个GUID。我认为写出每条记录的GUID在我的示例数据中变得有点麻烦。
顶部2是什么? **在SQL中没有默认排序。** – JNK 2011-03-31 17:24:51
所以你想按照PartId的顺序排列TOP 2组(由[IDNumber]定购),然后从这两个组中选出你想要的单个最高记录? – 2011-03-31 17:26:27
通过'PartID ASC'订购前2名? – Lamak 2011-03-31 17:26:32