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

Bảng xếp hạng giải đấu nhiều sự kiện

Bạn có thể mô phỏng một hàm xếp hạng trong MySQL bằng cách sử dụng tự nối với các giá trị có điểm cao hơn trong cùng một Event , và sau đó đếm số điểm cao hơn cho mỗi người tham gia:

SELECT s1.Name, s1.Event, s1.Score, COUNT(s2.Name)+1 AS Rank
FROM scores s1
LEFT JOIN scores s2 ON s2.Event = s1.Event AND s2.Score > s1.Score
WHERE s1.Name = 'Bob'
GROUP BY s1.Name, s1.Event, s1.Score
ORDER BY s1.Name, s1.Event

Đầu ra:

Name    Event   Score   Rank
Bob     1       100     1
Bob     2       75      3
Bob     3       80      2

Demo trên dbfiddle




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm thế nào để sửa chữa cột không xác định Bí danh truy vấn MySQL? 2018

  2. cách giữ giá trị băm trong cột bảng trong đường ray

  3. Ngày trả về giá trị rỗng sau khi gửi biểu mẫu chỉnh sửa trong php

  4. Cách sử dụng vòng lặp for-each khi chèn mảng vào mysql bằng Codeigniter?

  5. Cách lấy kích thước của cột trong bảng mysql