我想爲我的用戶返回一個朋友列表,並試圖收集與其user_id匹配的值。根據值在一行中選擇不同的列
| ID | user1_id | user1_status | user2_id | user2_status |
| 1 | 1 | 0 | 2 | 0 |
| 2 | 4 | 1 | 5 | 1 |
| 3 | 4 | 1 | 6 | 0 |
| 4 | 1 | 0 | 4 | 1 |
這裏是我有問題,我的價值尋找可以處於「user1_id」 /「user2_id」,然後我需要返回「user_status」只爲其他用戶。 ñ。我讓這張桌子非常簡單。在我的版本中,我希望我的服務器避免返回更多的列。
假設客戶端user_id是4,所以我需要選擇user1_id/user2_id等於4的所有行並返回其他人user_status。在表中,等於4的第一個情況在user1_id中,我需要該行返回user2_id和user2_status。
這裏是我到目前爲止,但它不工作:
mysqli($connect, "
SELECT `id`
CASE
WHEN `user1_id`='4' THEN `user2_id` AND `user2_status`
WHEN `user2_id`='4' THEN `user1_id` AND `user1_status`
ELSE NULL
END
from 'relationship'
where `user1_id`='4' OR `user2_id`='4'
")
如何寫這個查詢語句?
爲什麼你有PHP標籤? –
因爲我在php中查詢這個,我應該把它關掉嗎? – toastext
我想這個問題只關於SQL,所以你可以刪除PHP標籤 –