MariaDB 扩展了 Limit 语法
1.传统Limit
代码语言:sql复制SELECT * FROM staffs WHERE age > 35 LIMIT 10;
- 会持续扫描表直到找到10条符合条件的记录
- 如果表有1000万行,可能需要扫描到最后一行
- 消耗资源大,执行时间长
2.使用 LIMIT ... ROWS EXAMINED 的查询
代码语言:sql复制SELECT * FROM staffs
WHERE age > 35
LIMIT 10 ROWS EXAMINED 1000;
- 只扫描最多1000行就停止
- 如果1000行内找到10条记录,提前返回
- 如果1000行内没找到10条记录,也会停止并返回已找到的记录
- 保护数据库资源,避免全表扫描
发布评论