我知道这是一个尴尬的问题..但我不明白什么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)