sql
  • ruby-on-rails-3
  • activerecord
  • 2011-10-14 8 views 0 likes 
    0

    誰かが次のSQL文が変数@varに保存されない理由を教えてください。このステートメントの後で、変数は "YES"または "NO"の値を持つ必要があります。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'; 
    

    SQLは、私がこの文hereを見つけました。レール上の

    ルビー

    @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'") 
    
    +0

    'find_by_sql'の代わりに' ActiveRecord :: Base.connection.execute'を使うようにしてください – Bohdan

    +0

    私はなぜそうはしませんが、これは常に真実を返します...? – shub

    答えて

    0

    溶液をActiveRecord::Base.connection.select_rows()あります。

    関連する問題