Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Làm cách nào để lấy bản ghi NGẪU NHIÊN từ mỗi danh mục trong MySQL?

Có, bạn có thể làm điều này bằng cách liệt kê các hàng và sau đó tìm nạp ba hàng trên cùng:

select r.id, r.question, r.category
from (select r.*,
             (@rn := if(@c = category, @rn + 1,
                        if(@c := category, 1, 1)
                       )
             ) as seqnum
      from `random` r cross join
           (select @rn := 0, @c := -1) params
      order by category, rand()
     ) r
where seqnum <= 3;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tìm và thay thế toàn bộ cơ sở dữ liệu mysql

  2. Nhiều cột trong TRẬN ĐẤU LẠI

  3. Truy vấn MySQL sử dụng CASE để CHỌN nhiều cột

  4. MySQL Tạo View, Thay thế View và Drop View Statements bằng các ví dụ

  5. dịch vụ mysqld dừng mỗi ngày một lần trên máy chủ ec2