【发布时间】:2013-12-23 18:34:42
【问题描述】:
我想通过树路径从表中获取子树。
path 列存储如下字符串:
foo/
foo/bar/
foo/bar/baz/
如果我尝试选择以某个路径开头的所有记录:
EXPLAIN QUERY PLAN SELECT * FROM f WHERE path LIKE "foo/%"
它告诉我该表已被扫描,即使 path 列已编入索引:(
有什么方法可以让 LIKE 使用索引而不扫描表?
我找到了一种使用闭包表实现我想要的方法,但是它更难维护并且写入速度非常慢......
【问题讨论】:
标签: sqlite query-optimization sql-like