Thuật ngữ ngắn hạn phổ biến chỉ là "Giá trị hàng" . Hoặc "So sánh giá trị hàng" cho hoạt động bạn chứng minh. Tính năng đó đã có trong tiêu chuẩn SQL kể từ SQL-92 (!). Postgres hiện là RDBMS chính duy nhất hỗ trợ nó về mọi mặt - đặc biệt là hỗ trợ chỉ mục tối ưu.
Đặc biệt, biểu thức (col1, col2) < (1, 2)
chỉ là viết tắt của ROW(col1, col2) < ROW(1, 2)
trong Postgres. Biểu thức ROW(col1, col2)
còn được gọi là phương thức tạo hàng - giống như ARRAY[col1, col2]
là một phương thức tạo mảng.
Nó được viết tắt một cách thuận tiện cho cách diễn đạt tương đương dài dòng hơn:
col1 < 1 OR (col1 = 1 AND col2 < 2)
... và Postgres có thể sử dụng chỉ mục trên (col1, col2)
hoặc (col1 DESC, col2 DESC)
cho điều này.
Và đặc biệt khác biệt với (!)
col1 < 1 AND AND col2 < 2
Hãy xem xét ví dụ:(1,1)
...
Đây là bản trình bày của Markus Winand thảo luận chi tiết về tính năng phân trang:
"Phân trang được thực hiện theo cách PostgreSQL" trên use-the-index-luke.com.
So sánh giá trị hàng bắt đầu từ trang 20. Ma trận hỗ trợ mà tôi đã đề cập đến ở trang 45.
Tôi hoàn toàn không liên quan đến bất kỳ nguồn nào mà tôi đã trích dẫn.