首页 > 解决方案 > 大于多列/字典顺序的位置

问题描述

我正在编写一个用于分页的查询,其中一个典型的页面将由如下查询返回:

SELECT col_a, col_b
WHERE (col_a = 'value_a' AND col_b > 'value_b') OR (col_a > 'value_a')
ORDER BY col_a, col_b
LIMIT 50

让我感到有点惊讶的是,没有一种更简洁的方法可以WHERE减少重复次数。在那儿?

标签: sqlpostgresqlsortingpaginationtuples

解决方案


是的:有一种不同/更清晰的方式。您可以比较“元组”(这可能不是正确的术语)

WHERE (col_a, col_b) > ('value_a', 'value_b')

我不知道这是否会影响索引使用的可能性。


推荐阅读