What is an automatic covering index?

醉酒当歌 提交于 2019-12-22 04:26:12

问题


When using EXPLAIN QUERY PLAN in SQLite 3 it sometimes gives me output such as

SEARCH TABLE staff AS s USING AUTOMATIC COVERING INDEX (is_freelancer=? AND sap=?) (~6 rows)

Where does the index come from and what does it do? The table has no manually created indices on it.


回答1:


"Automatic" means that SQLite creates a temporary index that is used only for this query, and deleted afterwards.

This happens when the cost of creating the index is estimated to be smaller than the cost of looking up records in the table without the index.

(A covering index is an index that contains all the columns to be read, which means that the record corresponding to the index entry does not need to be looked up in the table.)



来源:https://stackoverflow.com/questions/20524686/what-is-an-automatic-covering-index

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!