使用Limit不会加快查询速度吗?

使用LIMIT不会加快查询速度吗,例如:

LOOKUP ON player;
LOOKUP ON player | LIMIT 1;

另外,使用MATCH也是,在不使用属性索引的情况下,只查点或边,LIMIT并不会加快查询速度。

目前来说 LIMIT 下推还没有完全开发完成,所以部分场景下 LIMIT 并不会加快查询速度。

:worried:
那现在v2.0.1版本有哪些场景下LIMIT可以加快查询速度?

go from "Tom Duncan" over like | limit 1
go 3 steps from "Tom Duncan" over like | limit 1

类似这种简单查询已经支持了,你可以通过explain来确认你的query是否已经做了下推优化

2 个赞

通过explain结果如何查看是否已经对LIMIT做了优化呢?

1 个赞

这种是没有优化的吧?

image
image

嗯。

go from "Tom Duncan" over like yield $$.person.name AS end_name | limit 1

加上yield,就没有优化了。。。

先 limit 再 yield 呢?
不过这里确实是下推优化规则没覆盖好

先 limit 再 yield,语法错误。

1 个赞

和 加上yield无关, 我们的下推优化是 针对 getNeightbor->project->limit 这个规则 才生效,
go from “Tom Duncan” over like yield $$.person.name AS end_name | limit 1。这个语句的执行计划里不包含面的规则,

go from “Tom Duncan” over like yield like._dst as id | limit 1 则包含上面的规则, 至于原因,是因为取了目的点属性,造成这两条语句,看着相似,但是执行计划不一样了。

1 个赞

确实加上 yield 就不行了,后续我们会重点优化下 limit

此话题已在最后回复的 30 天后被自动关闭。不再允许新回复。