SELECT RowID,BaseDeptID,BaseDeptName
FROM
(
select
RowID=ROW_NUMBER() OVER(PARTITION BY Affair_instance.BaseDeptID ORDER BY Affair_instance.BaseDeptID*RAND()),
Affair_instance.BaseDeptID,MAX(Affair_instance.BaseDeptName) AS BaseDeptName
from Affair_instance
Where
Affair_instance.IsDeleted=0 
GROUP BY Affair_instance.BaseDeptID
) AS TMP
WHERE RowID<=50
ORder by BaseDeptName,RowID

 

SELECT TOP 10 * FROM Affair_instance ORDER BY RAND()*CHECKSUM(NEWID())

posted on 2014-03-18 15:19  kenzhang  阅读(497)  评论(0)    收藏  举报