欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

mysql 取隨機整數

劉柏宏2年前12瀏覽0評論

在MySQL中,我們可以通過使用RAND()函數來取得隨機整數。該函數返回一個[0,1)之間的隨機數(不包括1),我們可以使用該數來生成我們需要的隨機整數。

SELECT FLOOR(RAND()*(50-10+1)+10);

上述代碼可以生成一個[10,50]之間的隨機整數。其中,RAND()函數返回一個[0,1)之間的隨機數,我們使用該數乘以(50-10+1),得到[0,41]之間的數,再加上10,就可得到[10,50]之間的數。

如果需要生成不重復的隨機整數序列,我們可以將上述代碼放在一個循環中,每次取完隨機數后,從原序列中刪除該數,直到序列為空。

SET @seq = '1,2,3,4,5,6,7,8,9,10';
SET @i = 0;
WHILE (LENGTH(@seq) >0) DO
SET @i = @i + 1;
SET @pos = FLOOR(RAND()*LENGTH(@seq));
SELECT SUBSTRING_INDEX(SUBSTRING_INDEX(@seq, ',', @pos+1), ',', -1) INTO @rand_num;
SELECT CONCAT('第', @i, '個隨機數為:', @rand_num) AS result;
SET @seq = REPLACE(@seq, CONCAT(',', @rand_num), '');
END WHILE;

上述代碼可以生成1~10之間的不重復隨機整數序列。其中,我們先將序列保存在@seq變量中,每次循環取出一個隨機數后,使用REPLACE函數將該數從序列中刪除。

需要注意的是,當需要生成大量的隨機整數時,應該避免使用循環的方式,可以通過一次性生成一批隨機整數再存儲在表中,以后再使用。