合計を特定のサイズにするために必要な、並べ替えられたテーブル列の行数を見つけたいと思います。これが私の(非常に非効率的な)コードの試みです:
DECLARE @CURNUM AS INT
DECLARE @CURSUM AS MONEY
SET @CURSUM=0.0
SET @CURNUM=1
WHILE @CURSUM<100000
BEGIN
SET @CURNUM=@CURNUM+1
SELECT @CURSUM = SUM(val1) FROM
(SELECT top (@CURNUM) val1 from table order by val1) a
END
print @CURNUM
誰かがより迅速な実装のための提案がありますか?テーブルのi番目の行を選択する方法はわかりませんが、これを行うとはるかに効率的になります。これが、次に試す方法です。
残念な制限:データベースの権限がないため、プロシージャや関数を作成できません。