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

truy vấn mysql PHP:Tôi muốn một mục cụ thể đứng đầu và có thể sửa đổi truy vấn số lượng mục sẽ được hiển thị

Tôi nghĩ bạn cần liệt kê các giá trị và các biến là cách đơn giản nhất. Sau đó, một phép nối bổ sung cung cấp cho bạn thông tin bạn cần để sắp xếp theo các tên thường gặp nhất trong bảng:

select t.*
from (select t.*,
             (@rn := if(@n = name, @rn + 1,
                        if(@rn := name, 1, 1)
                       )
             ) as rn
      from t cross join
           (select @n := '', @rn := 0
      order by name
     ) t join
     (select name, count(*) as cnt
      from t
      group by name
     ) tn
     on t.name = tn.name
where rn <= 4
order by cnt desc, name;



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. không thể lưu nhiều bảng trong cakephp

  2. Tham gia nào tốt hơn, ẩn hay rõ ràng?

  3. Laravel 5.3:Lỗi cú pháp hoặc vi phạm quyền truy cập:1463 Trường không nhóm 'khoảng cách' được sử dụng trong mệnh đề HAVING

  4. Sử dụng cuộn vô hạn w / a Cơ sở dữ liệu MySQL

  5. Việc kết hợp hai bảng không hoạt động