我知道这是一个尴尬的问题..但我不明白EXPLAIN
解释了什么..
我的查询是User.last
,耗时超过0.5秒
这可能是最简单的查询,但似乎解释它很难解释..
我不明白QUERY PLAN
之后发生的任何事情
什么宽度?什么是成本?它如何解释查询花费更多时间的位置?
[40] pry(main)> User.last
User Load (671.0ms) SELECT "users".* FROM "users" ORDER BY "users"."id" DESC LIMIT 1
EXPLAIN (39.0ms) EXPLAIN SELECT "users".* FROM "users" ORDER BY "users"."id" DESC LIMIT 1
EXPLAIN for: SELECT "users".* FROM "users" ORDER BY "users"."id" DESC LIMIT 1
QUERY PLAN
--------------------------------------------------------------------
Limit (cost=1.08..1.08 rows=1 width=2861)
-> Sort (cost=1.08..1.09 rows=5 width=2861)
Sort Key: id
-> Seq Scan on users (cost=0.00..1.05 rows=5 width=2861)
(4 rows)