Rails中的以下活动记录查询之间是否存在显着差异:
User.select('*')
User.all
主要是在DB,结果和性能方面的负载?
更新: 根据MrYoshiji的回答,最重要的区别在于 User.select('*')返回活动记录结果集,而User.all返回项目数组。如果您需要内置的活动记录方法,则非常重要。
答案 0 :(得分:1)
没有区别。生成的SQL查询几乎相同。
在Postgres中,使用User.select('*')
您将获得SELECT * FROM users
的查询。
使用User.all
,您将获得SELECT users.* FROM users
的查询。
不知道MySQL究竟会发生什么,但我想它也是一样。