当前位置:K88软件开发文章中心编程语言SQLSQLite01 → 文章内容

SQLite Explain

减小字体 增大字体 作者:佚名  来源:网上搜集  发布时间:2019-1-12 5:44:34

SQLite Explain(解释)在 SQLite 语句之前,可以使用 "EXPLAIN" 关键字或 "EXPLAIN QUERY PLAN" 短语,用于描述表的细节。如果省略了 EXPLAIN 关键字或短语,任何的修改都会引起 SQLite 语句的查询行为,并返回有关 SQLite 语句如何操作的信息。来自 EXPLAIN 和 EXPLAIN QUERY PLAN 的输出只用于交互式分析和排除故障。输出格式的细节可能会随着 SQLite 版本的不同而有所变化。应用程序不应该使用 EXPLAIN 或 EXPLAIN QUERY PLAN,因为其确切的行为是可变的且只有部分会被记录。语法EXPLAIN 的语法如下:EXPLAIN [SQLite Query]EXPLAIN QUERY PLAN 的语法如下:EXPLAIN QUERY PLAN [SQLite Query]实例假设 COMPANY 表有以下记录:ID NAME AGE ADDRESS SALARY---------- ---------- ---------- ---------- ----------1 Paul 32 California 20000.02 Allen 25 Texas 15000.03 Teddy 23 Norway 20000.04 Mark 25 Rich-Mond 65000.05 David 27 Texas 85000.06 Kim 22 South-Hall 45000.07 James 24 Houston 10000.0现在,让我们检查 SELECT 语句中的 Explain 使用:sqlite> EXPLAIN SELECT * FROM COMPANY WHERE Salary >= 20000;这将产生以下结果:addr opcode p1 p2 p3---------- ---------- ---------- ---------- ----------0 Goto 0 191 Integer 0 02 OpenRead 0 83 SetNumColu 0 54 Rewind 0 175 Column 0 46 RealAffini 0 07 Integer 20000 08 Lt 357 16 collseq(BI9 Rowid 0 010 Column 0 111 Column 0 212 Column 0 313 Column 0 414 RealAffini 0 015 Callback 5 016 Next 0 517 Close 0 018 Halt 0 019 Transactio 0 020 VerifyCook 0 3821 Goto 0 122 Noop 0 0现在,让我们检查 SELECT 语句中的 Explain Query Plan 使用:SQLite> EXPLAIN QUERY PLAN SELECT * FROM COMPANY WHERE Salary >= 20000;order from detail---------- ---------- -------------0 0 TABLE COMPANY

SQLite Explain