SQLite查询计划中的数字是什么意思?

时间:2015-10-05 19:11:58

标签: sqlite sql-execution-plan

我在SQLite上输出查询计划,它显示

 0|0|0|SCAN TABLE t (~500000 rows)

我想知道这个数字是什么意思(500000)?我猜这是表长度,但我在一个没有这么多行的小表上执行了查询。

是否有关于该号码含义的官方文件?谢谢。

1 个答案:

答案 0 :(得分:2)

正如official documentation所说,这是将返回数据库估计的行数。

如果已存在列的索引,并且您已运行ANALYZE,则SQLite可以根据实际数据进行估算。否则,它假定表包含一百万行,并且column > x之类的搜索会过滤掉一半的行。