Hướng dẫn MySQL này giải thích cách sử dụng chức năng MySQL RAND với cú pháp và ví dụ.RAND function with syntax and examples.
Sự mô tả
Hàm MySQL RAND có thể được sử dụng để trả về một số ngẫu nhiên hoặc một số ngẫu nhiên trong một phạm vi.
Cú pháp
Cú pháp cho hàm RAND trong MySQL là:
RAND[ [seed] ]
Tham số hoặc đối số
hạt giống. Nếu được chỉ định, nó sẽ tạo ra một chuỗi các số ngẫu nhiên lặp lại mỗi khi giá trị hạt giống được cung cấp.Ghi chú
- Hàm Rand sẽ trả về một giá trị giữa 0 [bao gồm] và 1 [độc quyền], vì vậy giá trị> = 0 và giá trị = 10 và = 10 và SELECT RAND[];
Result: 0.2430297417966926 [no seed value, so your answer will vary]
mysql> SELECT RAND[9];
Result: 0.406868412538309 [with seed value of 9]
mysql> SELECT RAND[-5];
Result: 0.9043048842850187 [with seed value of -5]
Ví dụ về số ngẫu nhiên
Hãy khám phá cách sử dụng hàm Rand trong MySQL để tạo số ngẫu nhiên> = 0 và SELECT RAND[]*[10-1]+1; Result: 3.71321560508871 [no seed value, so your answer will vary] mysql> SELECT RAND[9]*[10-1]+1; Result: 4.661815712844781 [with seed value of 9] mysql> SELECT RAND[-5]*[10-1]+1; Result: 9.138743958565168 [with seed value of -5]
Ví dụ về phạm vi thập phân ngẫu nhiên
Hãy khám phá cách sử dụng hàm RAND trong MySQL để tạo số thập phân ngẫu nhiên giữa hai số [IE: Phạm vi].
Ví dụ: sau đây sẽ tạo ra một giá trị thập phân ngẫu nhiên là> = 1 và SELECT FLOOR[RAND[]*[30-20+1]]+20; Result: 22 [no seed value, so your answer will vary] mysql> SELECT FLOOR[RAND[9]*[30-20+1]]+20; Result: 24 [with seed value of 9] mysql> SELECT FLOOR[RAND[-5]*[30-20+1]]+20; Result: 29 [with seed value of -5]
Tôi đang cố gắng tạo một số nguyên ngẫu nhiên cho mỗi hàng tôi chọn từ 1 đến 60 làm bộ đếm thời gian.
SELECT downloads.date, products.*, [FLOOR[1 + RAND[] * 60]] AS timer
Tôi đã tìm kiếm và tiếp tục đến chức năng tầng này như cách chọn một số nguyên ngẫu nhiên trong một phạm vi. Điều này cho tôi 1 cho mỗi hàng. Tôi còn thiếu gì?
Tôi đang ở trên mysql 5.0.75
Đây là phần còn lại của truy vấn mà tôi tin rằng nó có thể là một vấn đề làm tổ
SELECT * FROM [ SELECT downloads.date, products.*, FLOOR[1 + [RAND[] * 60]] AS randomtimer, [ SELECT COUNT[ * ] FROM distros WHERE distros.product_id = products.product_id ] AS distro_count, [SELECT COUNT[*] FROM downloads WHERE downloads.product_id = products.product_id] AS true_downloads FROM downloads INNER JOIN products ON downloads.product_id = downloads.product_id ] AS count_table WHERE count_table.distro_count > 0 AND count_table.active = 1 ORDER BY count_table.randomtimer , count_table.date DESC LIMIT 10
Đã hỏi ngày 11 tháng 6 năm 2009 lúc 23:57Jun 11, 2009 at 23:57
Kevzettlerkevzettlerkevzettler
4.86314 Huy hiệu vàng52 Huy hiệu bạc99 Huy hiệu Đồng14 gold badges52 silver badges99 bronze badges
Điều này đang làm việc cho tôi. Phiên bản MySQL của bạn có thể?
SELECT RAND[]*[b-a]+a;
0Đã trả lời ngày 12 tháng 6 năm 2009 lúc 0:08Jun 12, 2009 at 0:08
Ryan Oberoiryan OberoiRyan Oberoi
13.4K2 Huy hiệu vàng23 Huy hiệu bạc23 Huy hiệu đồng2 gold badges23 silver badges23 bronze badges
1
Đầu ra của hàm
SELECT RAND[]*[b-a]+a;
5 sẽ luôn là giá trị từ 0 đến 1.0 and 1.Thử cái này:
SELECT RAND[]*[b-a]+a;
1Michel Ayres
5.73310 Huy hiệu vàng61 Huy hiệu bạc97 Huy hiệu Đồng10 gold badges61 silver badges97 bronze badges
Đã trả lời ngày 12 tháng 6 năm 2009 lúc 0:10Jun 12, 2009 at 0:10
Chris Morleychris MorleyChris Morley
2.4262 Huy hiệu vàng19 Huy hiệu bạc20 Huy hiệu Đồng2 gold badges19 silver badges20 bronze badges
1
Câu hỏi cũ, nhưng luôn luôn là vấn đề thực sự.
Đây là một cách để tạo chức năng MySQL
SELECT RAND[]*[b-a]+a;
6 dựa trên hướng dẫn sử dụng:SELECT RAND[]*[b-a]+a;
2SELECT RAND[]*[b-a]+a;
3Đã trả lời ngày 22 tháng 3 năm 2021 lúc 10:29Mar 22, 2021 at 10:29
JCH77JCH77JCH77
94911 Huy hiệu bạc10 Huy hiệu đồng11 silver badges10 bronze badges
Tôi đang chạy truy vấn của bạn và nó cho tôi một số ngẫu nhiên cho mỗi hàng .... có thể có liên quan đến tên của ngẫu nhiên [hẹn giờ]?
Đã trả lời ngày 12 tháng 6 năm 2009 lúc 0:07Jun 12, 2009 at 0:07
JaimejaimeJaime
6.6761 Huy hiệu vàng26 Huy hiệu bạc42 Huy hiệu đồng1 gold badge26 silver badges42 bronze badges
Bạn có thể tăng số lượng nhân với số lượng hồ sơ trong bảng.
SELECT RAND[]*[b-a]+a;
4Đã trả lời ngày 4 tháng 2 năm 2015 lúc 15:25Feb 4, 2015 at 15:25
Làm thế nào để bạn tạo ra một số nguyên ngẫu nhiên trong SQL?
Để tạo một số nguyên ngẫu nhiên giữa hai giá trị [phạm vi], bạn có thể sử dụng công thức sau: Chọn Tầng [Rand []*[B-A+1]]+A; Trong đó A là số nhỏ nhất và B là số lớn nhất mà bạn muốn tạo ra một số ngẫu nhiên cho.SELECT FLOOR[RAND[]*[b-a+1]]+a; Where a is the smallest number and b is the largest number that you want to generate a random number for.Rand [] trong mysql là gì?
Hàm Rand [] trả về một số ngẫu nhiên giữa 0 [bao gồm] và 1 [độc quyền].returns a random number between 0 [inclusive] and 1 [exclusive].Làm cách nào để tạo số int ngẫu nhiên?
Để tạo các số ngẫu nhiên bằng cách sử dụng ThreadLocalRandom, hãy làm theo các bước bên dưới:..Nhập lớp java.util.concien.threadlocalrandom ..Gọi phương thức.Để tạo số ngẫu nhiên của loại int ThreadLocalRandom.Current []. NextInt [] để tạo số ngẫu nhiên của loại kép képLocalRandom.civerse []. NextDouble [].Làm thế nào chúng ta có thể nhận được một số ngẫu nhiên từ 1 đến 100 trong MySQL?
Để có được giá trị ngẫu nhiên giữa hai giá trị, hãy sử dụng phương thức mysql rand [] với sàn [].Cú pháp như sau.Chọn tầng [rand [] * [MaximumValue-MinimumValue] + MinimumValue] như bất kỳVariaBlename;Hãy để chúng tôi kiểm tra với một số giá trị tối đa và tối thiểu.use MySQL rand[] method with floor[]. The syntax is as follows. select FLOOR[ RAND[] * [maximumValue-minimumValue] + minimumValue] as anyVariableName; Let us check with some maximum and minimum value.