2010-03-28 64 views
2

我有一個用戶表「用戶」有場像的結果中添加一列想要生成一個查詢來選擇所有的用戶,但是還要添加另一個字段/列,並且說'network_status'取決於user_accepted和fiend_accepted的值。例如,如果user_accepted爲true,friend_accepted爲false,我希望'network_status'字段說'發送請求'。我可以在一個查詢中做到這一點? (我不喜歡用戶的if/else裏面的查詢,但如果這是唯一的辦法就這樣吧)查詢取決於有列

回答

3

你將不得不看看CASE Statement

喜歡的東西

SELECT u.id, 
     u.first_name, 
     u.last_name, 
     CASE 
      WHEN r.user_accepted = 1 AND r.friend_accepted = 0 
       THEN 'request sent' 
      ELSE 'Not sure' 
     END 
FROM users u LEFT JOIN 
     relationships r ON u.id = r.user_id