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

Truy vấn SQL để phân trang với nhiều cột; hiểu toán tử HOẶC

Mục đích của OR - như bạn nghi ngờ - là để xử lý trường hợp có sự ràng buộc trong điểm số. Ý tưởng là tạo một sắp xếp ổn định bằng cách bao gồm id , vì vậy điều này nhận được mọi thứ sau (score, id) .

Có lẽ, các giá trị được sử dụng cho scoreid là những giá trị cuối cùng được nhìn thấy (có thể ở trang trước, nhưng đó là suy đoán).

Sắp xếp "ổn định" là sắp xếp trả về các hàng theo cùng một thứ tự mỗi khi nó được áp dụng. Bởi vì các bảng SQL đại diện cho không có thứ tự bộ, mối quan hệ ngụ ý một không ổn định loại. Bao gồm id làm cho nó ổn định (giả sử rằng id là duy nhất.

Postgres thực sự hỗ trợ một cú pháp đơn giản hơn:

where (score, id) > (11266, 4482)

Lưu ý rằng tôi cũng đã loại bỏ các dấu ngoặc kép. Các giá trị trông giống như số nên chúng phải được coi là số không phải là chuỗi.




  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 để tạo số sê-ri trong một truy vấn?

  2. Ebean tìm kiếm tên chuỗi sai trong Play Framework 2

  3. Cách kết nối GraphQL và PostgreSQL

  4. Lời khuyên khóa hoặc NOWAIT để tránh phải chờ các hàng bị khóa?

  5. Tại sao nó hoạt động khác với ~~ any ()?