程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> 其他數據庫知識 >> 更多數據庫知識 >> 生成300個不同的隨機數的SQL語句,隨機數sql語句

生成300個不同的隨機數的SQL語句,隨機數sql語句

編輯:更多數據庫知識

生成300個不同的隨機數的SQL語句,隨機數sql語句


--生成300個8位不重復純數字隨機數

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;
  END 
END
SELECT DISTINCT num FROM #temp_Table
DROP TABLE #temp_Table


SQL語句隨機產生隨機數

SELECT RAND((DATEPART(mm, GETDATE()) * 100000) + (DATEPART(ss, GETDATE()) * 1000) + DATEPART(ms, GETDATE())) 在SQL試一下能否滿足
 

用sql server生成隨機數

--創建視圖
create view myview as select re=rand()

--自定義函數:取得指定范圍的隨機數
create function mydata(
@a int,
@b int)
returns decimal(38,0)
as
begin
declare @r decimal(38,0)
select @r=cast(re*(@b-@a)+@a as decimal(38,0)) from myview
return(@r)
end
go

--調用(可以隨意指定你要的數據范圍)
select user_no,dbo.mydata(1000,9999) number from table1

--可以在你原來的查詢基礎上增加一列number,如不增加列,
--那就把上面的結果放入一個臨時表 #a,然後update
--如:
update table1 set number1=a.number from #a a,table1 b where a.user_no=b.user_no
 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved