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

Làm thế nào để đếm tất cả các bản ghi nhưng chỉ lấy (LIMIT) một số cụ thể để hiển thị?

MySQL có một số hỗ trợ đặc biệt cho loại điều này. Đầu tiên, hãy bao gồm SQL_CALC_FOUND_ROWS trong phần CHỌN của bạn:

SELECT SQL_CALC_FOUND_ROWS *
FROM Badges
WHERE UID = '$user'
ORDER by Date DESC
LIMIT 10 -- Or whatever

Sau đó, kéo các hàng của bạn ra rồi xem ngay FOUND_ROWS() như thế này:

SELECT FOUND_ROWS()

để có số hàng phù hợp với truy vấn ban đầu của bạn mà không cần xem xét mệnh đề LIMIT.

Đây là cách dành riêng cho MySQL nhưng sẽ nhanh hơn một chút so với thực hiện hai truy vấn.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Thông báo khi ai đó tải video lên

  2. 2 cách chuyển đổi giữa hệ thập phân và hệ thập lục phân trong MySQL

  3. Thiết kế hệ thống đặt chỗ phim MySQL phần 2

  4. tham số mysql Managed-procedure:out

  5. Không tìm thấy './mysql/user.MYD' (Mã lỗi:2 - Không có tệp hoặc thư mục như vậy)