【发布时间】:2017-10-27 20:00:04
【问题描述】:
下面是一个获取用户相关数据的 SQL 查询。
def self.get_user_details(user_id)
result = Event.execute_sql("select replace(substring_index(properties, 'text', -1),'}','') as p, count(*) as count
from ahoy_events e where e.user_id = ?
group by p order by count desc limit 5", :user_id)
return result
end
我想动态地将值传递给用户 ID 以获得结果。 我正在使用下面的方法来清理 sql 数组,但它仍然没有返回任何结果。如果给定静态参数,查询工作正常。
def self.execute_sql(*sql_array)
connection.execute(send(:sanitize_sql_array, sql_array))
end
由于查询很复杂,我无法弄清楚 ActiveRecord 获取结果的方式。 有什么办法可以解决这个问题吗?
【问题讨论】:
标签: mysql ruby-on-rails ruby-on-rails-3