2013-09-25 57 views
0

我有一个发送预定短信的表。一些文本有多个接收者,每次我选择最多100个接收者时,具有相同文本的记录具有相同的GroupID但所有接收者必须具有相同的GroupID。例如,如果有500条记录具有相同的GroupID,我应该选择该组的100条记录,但是如果有10条记录具有相同的GroupID,那么我应该只选择这10条记录。

那么我可以简单地选择前100名来定义最大的问题是我不知道如何避免选择与其他GroupID的记录。

我想出了这个解决方案你怎么看?SQL Server:按列分组并获得第一组

select top 100 * from ScheduledSms 
where GroupID = (select top 1 GroupID from ScheduledSms order by DateAdded) 

回答

0

好吧,我用我自己的解决方案,它工作正常:

select top 100 * from ScheduledSms 
where GroupID = (select top 1 GroupID from ScheduledSms order by DateAdded) 
0
SELECT TOP 100 receiver 
WHERE groupid = '...' 
+0

我不知道诸组,我只是想查询返回的第一组(什么都它的GROUPID是) –