這裏就是我想要做:在SQL Server中,我怎麼可能在一個循環中選擇頂@num%的
運行一個循環3次;每次我從表中分別隨機選擇5%,10%,15%。但是,在輸出表中,每行的'比率'列爲5,列名不是'比率'。輸出表中的第一列應顯示應用的比率,即包括5%,10%和15%。謝謝!
下面是我的代碼:
DECLARE @intFlag INT
DECLARE @endFlag INT
DECLARE @num INT
DECLARE @totalScen INT
SET @intFlag = 1
SET @endFlag=5
SET @num =5
SET @totalScen =15
WHILE (@num <= @totalScen)
BEGIN
WHILE (@intFlag <= @endFlag)
BEGIN
WITH cte AS (select t1.gender, t1.age_group
from
(
select * from mytable1
where caseid not in
(
select top (@num) percent caseid from mytable1
order by newid()
)
) t1
)
INSERT INTO newTable
SELECT @num as Ratio, gender, age_group
FROM cte
SET @intFlag = @intFlag + 1
END
SET @[email protected]+5
END
GO
你試圖讓5個結果在每個比例? –