Hướng dẫn how do you generate a random number between two numbers in mysql? - làm thế nào để bạn tạo một số ngẫu nhiên giữa hai số trong mysql?
Show
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ápCú 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ú
Phạm vi thập phân ngẫu nhiênĐể tạo số thập phâ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: SELECT RAND()*(b-a)+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 RAND()*(25-10)+10; Công thức trên sẽ tạo ra số thập phân ngẫu nhiên> = 10 và <25. (Lưu ý: Công thức này sẽ không bao giờ trả về giá trị 25 vì hàm ngẫu nhiên sẽ không bao giờ trả về 1.)Note: this formula will never return a value of 25 because the random function will never return 1.) Phạm vi số nguyên ngẫu nhiênĐể tạo số nguyên ngẫu nhiên giữa hai giá trị (phạm vi bao gồm), bạn có thể sử dụng công thức sau: SELECT FLOOR(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()*(25-10+1))+10; Công thức trên sẽ tạo ra số thập phân ngẫu nhiên> = 10 và <25. (Lưu ý: Công thức này sẽ không bao giờ trả về giá trị 25 vì hàm ngẫu nhiên sẽ không bao giờ trả về 1.) Phạm vi số nguyên ngẫu nhiênĐể tạo số nguyên ngẫu nhiên giữa hai giá trị (phạm vi bao gồm), bạn có thể sử dụng công thức sau:
Áp dụng choHàm Rand có thể được sử dụng trong các phiên bản sau của MySQL: MySQL 5.7, MySQL 5.6, MySQL 5.5, MySQL 5.1, MySQL 5.0, MySQL 4.1, MySQL 4.0, MySQL 3.23 mysql> 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àVí dụ: Mặc dù hàm RAND sẽ trả về giá trị 0, nhưng nó sẽ không bao giờ trả về giá trị là 1. Nó sẽ luôn trả về giá trị nhỏ hơn 1.Note: it will never return a value of 10): mysql> 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ênHã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à <10 (lưu ý: nó sẽ không bao giờ trả về giá trị 10): mysql> 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) Trên thực tế, SELECT RAND()*(b-a)+a;0 là cách tốt nhất trong MySQL để làm những gì bạn thích. Nó cũng là cách tốt nhất trong ActionScript, JavaScript và Python. Thành thật mà nói, tôi thích nó theo cách PHP vì nó thuận tiện hơn. Bởi vì tôi không biết bạn sẽ quay trở lại bao nhiêu Sử dụng MySQL. Phụ lụcVì vậy, có một câu hỏi là liệu điều này tốt hơn trong PHP hay MySQL. Thay vì tham gia vào một cuộc tranh luận về các nguyên tắc, tôi đã chạy như sau:
|