我想使用sequelize实现这个sql查询。
select id, date, comment
from posts
where (date, id) > ('2018-01-01', 1)
order by date, id
limit 10
这种查询用于无限滚动分页。有关如何做到这一点的任何想法?文档没有说明行值
答案 0 :(得分:1)
如果问题是where
,您可以将其重写为:
where date > '2018-01-01' or (date = '2018-01-01' and id > 1)
答案 1 :(得分:1)
正如@GondonLinoff指出的那样,查询可以重写。
我使用<dependency>
<groupId>javax.ejb</groupId>
<artifactId>javax.ejb-api</artifactId>
<version>LATEST</version>
<scope>provided</scope>
</dependency>
分析了postgres上两个查询的性能,但它没有任何影响(似乎行值只是语法糖,但是dba专家可以解释这个)。
因此,在sequelize中,where子句应该实现为:
explain analyze