如何在ORDER BY子句后从指定ID位置开始查询数据?
解决方案
直接在WHERE条件里添加对a.TABLE_A_ID的过滤即可,因为你已经按这个字段升序排序,这样就能精准从指定ID开始拉取后续记录。
修改后的查询语句
SELECT * FROM TABLE_A a LEFT JOIN TABLE_B b ON a.TABLE_B_ID = b.TABLE_B_ID WHERE b.CODE IS NOT NULL AND b.OTHER_FIELD IS NOT NULL AND a.TABLE_A_ID >= 344456 -- 从指定ID开始(包含该ID) ORDER BY a.TABLE_A_ID;
注意事项
- 如果之前已经处理过ID=344456的记录,不需要重复拉取,把条件改成
a.TABLE_A_ID > 344456即可。 - 要是你的排序规则是降序(比如
ORDER BY a.TABLE_A_ID DESC),就把过滤条件换成a.TABLE_A_ID <= 344456。
内容的提问来源于stack exchange,提问作者Euridice01
相关产品推荐
相关产品推荐

