find_by_sql 并选择案例
Posted
技术标签:
【中文标题】find_by_sql 并选择案例【英文标题】:find_by_sql and select case 【发布时间】:2011-10-14 10:57:35 【问题描述】:谁能帮助我为什么下面的 SQL 语句不会存储在变量@var
中?在此语句之后,变量的值应为“YES”或“NO”。
SQL
SELECT CASE WHEN MAX(user_id) IS NULL THEN 'NO' ELSE 'YES' END User_exists
FROM user_id_table
WHERE user_id = 'some_user';
我发现了这个声明here。
Ruby on Rails
@var = Test.find_by_sql("SELECT CASE WHEN MAX(user_id) IS NULL THEN 'NO' ELSE 'YES' END user_exists
FROM user_id_table
WHERE user_id = 'some_user'")
【问题讨论】:
尝试使用ActiveRecord::Base.connection.execute
而不是find_by_sql
我不知道为什么,但这总是返回 true...?
【参考方案1】:
解决方案是ActiveRecord::Base.connection.select_rows()
。
【讨论】:
以上是关于find_by_sql 并选择案例的主要内容,如果未能解决你的问题,请参考以下文章