Q&A
例えばallを実行すると、User Load
という文字が表示されます。
User.all User Load (3.5ms) SELECT "users".* FROM "users"
一方で、pluck
を実行するとSQL自体は一緒のようですがUser Load
は表示されません。
User.pluck(:name) (1.9ms) SELECT "users"."name" FROM "users"
はじめはメモリにロードしているかの違いかなと思ったんですが、
pluck
もメモリにロードしてることは一緒だと思うので、何が違うのかなと疑問に思いました。
names = User.pluck(:name) (1.9ms) SELECT "users"."name" FROM "users" names => ["foo", "bar"]
上記のようにXXX Load
と表示されるものとされないものの違いをご存知の方がいたらご教示いただけませんでしょうか?
回答1件
下記のような回答は推奨されていません。
このような回答には修正を依頼しましょう。
2022/03/16 05:52
2022/03/16 06:09
2022/03/16 07:29