选择随机行并在达到特定总和/总数时停止

时间:2013-08-28 09:31:48

标签: sql sql-server-2000

compcobalt(对于SQL Server 2012 )通过此主题询问:Select random rows and stop when a specific sum/total is reached

明细:


我正在使用SQL Server 2012而我正在尝试这样做:

SELECT SUM(MILES) from tblName WHERE 
mDate > = '03/01/2012' and 
mDate <= '03/31/2012' 
-- and...
/* 
   now I want to add here do until the SUM of Miles 
   is equal to or greater then '3250' and get the 
   results rows randomly
*/

换句话说,我想从表格中选择具有指定日期和日期的随机行,并在英里总和达到或超过该数字时停止:3250


但我的问题是如何使用SQL Server 2000 ?感谢

1 个答案:

答案 0 :(得分:0)

这是一个棘手的问题,可以做到。我的想法是 1.给你的桌子加行号。 2.然后生成随机数。 3.借助row_number和随机生成的数字选择行。 继续这样做,直到和你一样。

但问题是SQL server 2000没有row_number函数 从http://forums.asp.net/t/1630106.aspx/1

获取帮助

用于生成随机数plz,请参阅

generate x digit random number in sql server 2008 R2

祝你好运

如果我有任何帮助,请更新我

问候

Ashutosh Arya