-- 创建两个示例表
CREATE TABLE employees (
id INTEGER PRIMARY KEY,
last_name TEXT,
department_id INTEGER
);
CREATE INDEX idx_last_name ON employees (last_name);
CREATE INDEX idx_department_id ON employees (department_id);
-- 使用 INDEXED BY 指定查询中使用的索引
SELECT * FROM employees
WHERE last_name = 'Smith' AND department_id = 1
INDEXED BY idx_last_name;
在上面的例子中,INDEXED BY idx_last_name 指定了在执行查询时使用 idx_last_name 索引。这可以在某些情况下对查询性能进行优化。
要注意的是,SQLite 查询优化器通常会自动选择最合适的索引,而不需要显式使用 INDEXED BY。只有在特殊情况下,当你希望强制使用某个索引时,才会使用这个子句。在绝大多数情况下,不需要手动指定索引,而是依赖于 SQLite 查询优化器自动选择最佳执行计划。
转载请注明出处:http://www.pingtaimeng.com/article/detail/14191/SQLite