我读了一篇文章说,为了获得更好的效果,应使用find_by_sql(xxxxxxxxx)
代替find_by_name('John')
。
这是真的吗?
这两种模式有什么区别?
如果你能展示一些例子,我会很感激!
答案 0 :(得分:1)
如果您正在寻找的是良好的性能,那么您不应该使用Rails或Ruby。
find_by_sql
http://apidock.com/rails/ActiveRecord/Base/find_by_sql/class
find_by
是基于数据库中列的动态查找程序。例如:
Post.find_by_name('John')
将返回找到name ='John'的帖子对象。这是一个LIMIT 1语句,所以如果你有多个名为John的Post对象,它只会返回1。
最后,find_by_sql是你想运行纯SQL命令,而find_by是魔术助手。