|
|
低调的镜子 · 如何在设置SQLite列默认值时使用字符串常 ...· 1 月前 · |
|
|
力能扛鼎的创口贴 · 关于EXCEL在打印预览/转换为PDF时行高 ...· 1 年前 · |
|
|
不羁的仙人掌 · 第六章:使用QueryDSL的聚合函数-腾讯 ...· 2 年前 · |
|
|
千年单身的佛珠 · Bootstrap 响应式实用工具 | 菜鸟教程· 3 年前 · |
|
|
活泼的铁链 · DateTimePicker ...· 3 年前 · |
index
查询时是否使用了创建的
select
?
索引:
events (page,notuniqueid,type,timestamp);
SQL语句:
SELECT *
FROM events
WHERE type = 'comment' AND TIMESTAMP > $time AND PAGE = '$page'
LIMIT 1
这个查询会使用索引吗?
发布于 2014-09-01 09:24:09
要了解查询是如何执行的,请使用 解释查询计划 运行它
> EXPLAIN QUERY PLAN SELECT * from events WHERE type='comment' AND TIMESTAMP > $time AND PAGE = '$page' LIMIT 1
0|0|0|SEARCH TABLE events USING INDEX MyLittleIndex (page=?)
在这种情况下,只能使用索引的第一列,因为
notuniqueuid
列上没有查找。
一个更好的索引(用于此查询)将在
(page,comment,timestamp)
上。
(见 SQLite查询规划器 .)
发布于 2022-09-30 08:55:33
一旦您使用了@CL所描述的
EXPLAIN QUERY PLAN
,您可能想确切地看到您有哪些索引.
SELECT name, tbl_name FROM sqlite_master WHERE type = 'index'
https://stackoverflow.com/questions/25602606
复制相似问题
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2023 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号: 粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
|
|
千年单身的佛珠 · Bootstrap 响应式实用工具 | 菜鸟教程 3 年前 |