[Asp.net] 隨機生成300個不重複的 純數字8位數
阿新 • • 發佈:2019-02-02
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
--隨機生成300個不重複的 純數字8位數
--注:具體多少是可自定義的 就看你如何去反三
-- =============================================
CREATE PROCEDURE SP_ceshi_random
AS
BEGIN
DECLARE @i INT= 0;
DECLARE @j INT;
DECLARE @qnum INT= 300; --生成隨機數的數量
SET NOCOUNT ON
CREATE TABLE #temp_Table ( num INT )
WHILE ( @i < @qnum )
BEGIN
SELECT @j = CAST(FLOOR(RAND() * ( 99999999 - 10000000 )
+ 10000000) AS INT)
IF ( NOT EXISTS ( SELECT num
FROM #temp_Table
WHERE num = @j )
)
BEGIN
INSERT #temp_Table
( num )
VALUES ( @j )
SET @i += 1; --當生成的數值不是臨時表裡時,就新增並資料+1;繼續迴圈
END
END
SELECT DISTINCT
num
FROM #temp_Table
DROP TABLE #temp_Table
END
GO