Computer >> Máy Tính >  >> Lập trình >> C#

ĐẶT HÀNG BẰNG rand () và giữ chúng được nhóm trong MySQL?

Đầu tiên chúng ta hãy tạo một bảng -

mysql> create table DemoTable
   -> (
   -> StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY,
   -> StudentMarks int
   -> );
Query OK, 0 rows affected (0.58 sec)

Chèn một số bản ghi trong bảng bằng lệnh chèn. Chúng tôi cũng đã chèn các bản ghi trùng lặp -

mysql> insert into DemoTable(StudentMarks) values(98);
Query OK, 1 row affected (0.11 sec)
mysql> insert into DemoTable(StudentMarks) values(98);
Query OK, 1 row affected (0.10 sec)
mysql> insert into DemoTable(StudentMarks) values(78);
Query OK, 1 row affected (0.10 sec)
mysql> insert into DemoTable(StudentMarks) values(78);
Query OK, 1 row affected (0.29 sec)
mysql> insert into DemoTable(StudentMarks) values(45);
Query OK, 1 row affected (0.10 sec)
mysql> insert into DemoTable(StudentMarks) values(56);
Query OK, 1 row affected (0.09 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 DemoTable;

Điều này sẽ tạo ra kết quả sau -

+-----------+--------------+
| StudentId | StudentMarks |
+-----------+--------------+
| 1         | 98           |
| 2         | 98           |
| 3         | 78           |
| 4         | 78           |
| 5         | 45           |
| 6         | 56           |
+-----------+--------------+
6 rows in set (0.00 sec)

Sau đây là truy vấn sắp xếp thứ tự bằng rand () giữ chúng được nhóm lại -

mysql> select *from DemoTable order by rand(StudentMarks*100*RAND());

Điều này sẽ tạo ra kết quả sau. Tại đây, các bản ghi nhãn hiệu 98 vẫn được nhóm lại -

+-----------+--------------+
| StudentId | StudentMarks |
+-----------+--------------+
| 3         | 78           |
| 6         | 56           |
| 5         | 45           |
| 4         | 78           |
| 1         | 98           |
| 2         | 98           |
+-----------+--------------+
6 rows in set (0.00 sec)