2014-10-29 52 views
0

我想檢查表中存在的兩個領域,並基於該值,我想無論是顯示領域的1或2場 例如:如何實現。如果在mysql中select語句else條件

Select name from users if address1='Mars' 
else select age from users if address2='Mars'; 

我想是因爲我需要使用ActiveRecord::Base.connection.select_values("sql query")

應該是什麼SQL查詢來達到同樣執行這一軌道中的控制器來實現這一點使用平面SQL。我無法在任何地方找到它。提前致謝。

回答

3

使用CASE

SELECT CASE 
      WHEN address1='Mars' THEN name 
      WHEN address2='Mars' THEN age 
     END 
FROM users 
+0

如何刪除空值? – 2014-10-29 11:16:13

0

請嘗試User.find_by_sql("your sql query")