Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MySQL

Cách cập nhật bản ghi trong cột với số ngẫu nhiên trong MySQL

Cách cập nhật bản ghi trong cột với số ngẫu nhiên trong MySQL

Hãy tạo một bảng trước:

mysql> create table DemoTable746 (
    Number int
);
Query OK, 0 rows affected (0.56 sec)

Chèn một số bản ghi vào bảng bằng lệnh insert:

mysql> insert into DemoTable746 values(100);
Query OK, 1 row affected (0.14 sec)
mysql> insert into DemoTable746 values(200);
Query OK, 1 row affected (0.18 sec)
mysql> insert into DemoTable746 values(300);
Query OK, 1 row affected (0.31 sec)
mysql> insert into DemoTable746 values(400);
Query OK, 1 row affected (0.20 sec)

Hiển thị tất cả các bản ghi từ bảng bằng câu lệnh select:

mysql> select * from DemoTable746;

Điều này sẽ tạo ra đầu ra sau:

+--------+
| Number |
+--------+
| 100    |
| 200    |
| 300    |
| 400    |
+--------+
4 rows in set (0.00 sec)

Truy vấn sau cập nhật bản ghi với số ngẫu nhiên:

mysql> update DemoTable746 set Number=CAST(RAND() * 10000 AS UNSIGNED);
Query OK, 4 rows affected (0.13 sec)
Rows matched: 4 Changed: 4 Warnings: 0

Kiểm tra lại các bản ghi của bảng:

mysql> select * from DemoTable746;

Điều này sẽ tạo ra đầu ra sau (kết quả sẽ khác nhau mỗi lần chạy):

+--------+
| Number |
+--------+
| 4422   |
| 1350   |
| 3485   |
| 3371   |
+--------+
4 rows in set (0.00 sec)

Giải thích: RAND() sinh số thực ngẫu nhiên [0,1). Nhân với 10000 cho khoảng [0,10000). CAST(... AS UNSIGNED) chuyển sang số nguyên không dấu.