由于效果较差而导致处理大型记录时,建议不要使用WHERE id < x LIMIT y
,而只需使用brew
之类的内容。
如果出现这种情况,为什么存在OFFSET,还有其他用途吗?
答案 0 :(得分:2)
评论太长了。
从概念上讲,offset
(和limit
)的工作方式是整个结果集在生成后进行过滤。因此,为了获得第34行,需要生成所有行。
如果有另一种方法可以使用where
来获取相同的行,那么通常会更快(对于&#34; y&#34;的大值),因为中间行不会必须生成。
但是,offset
仍然非常有用。你怎么能轻易地从候选人那里获得11岁以上的平均民意调查评分的候选人,所以你知道谁应该加入&#34;也跑?&#34;辩论?你会如何获得第二高的价值,这就是你想要的?对于较小的数据集,offset
对于这些类型的问题非常有用。它对于较小的结果集进行分页也很有用。