SQLite Indexed By
sqlite indexed by
"indexed by index-name" 子句规定必须需要命名的索引来查找前面表中值。
如果索引名 index-name 不存在或不能用于查询,然后 sqlite 语句的准备失败。
"not indexed" 子句规定当访问前面的表(包括由 unique 和 primary key 约束创建的隐式索引)时,没有使用索引。
然而,即使指定了 "not indexed",integer primary key 仍然可以被用于查找条目。
1. 语法
下面是 indexed by 子句的语法,它可以与 delete、update 或 select 语句一起使用:
select|delete|update column1, column2... indexed by (index_name) table_name where (condition);
假设有表 company,我们将创建一个索引,并用它进行 indexed by 操作。
sqlite> create index salary_index on company(salary); sqlite>
现在使用 indexed by 子句从表 company 中选择数据,如下所示:
sqlite> select * from company indexed by salary_index where salary > 5000;