//查询状态为0的数据,并翻页返回数据,每次翻页10条。
1)select * from table_a where status=0 limit 0,10;
2)select * from table_a where status=0 and id >#{lastId} order by id limit 10;
假设满足status=0的数据一共12条。分别是id=1,2,...11,12
第一条sql语句:返回id=1-10数据后。id=2的数据、status=0被改成status=1了。这时候翻页,只返回了id=12数据。(少了id=11的数据)
而第二条sql语句,由于把上次查询的最大id作为参数传进去,而且是limit 10,不会丢失id=11的数据
本文探讨了两种SQL查询方法用于翻页展示数据时的区别。第一种方法可能会遗漏数据,而第二种方法通过传递上一次查询的最大ID确保了数据的完整性。
1144

被折叠的 条评论
为什么被折叠?



