簡體   English   中英

選擇在MySQL的兩列之間選擇值

[英]Choose to Select Value Between Two Columns in MySQL

只是從事個人項目。 我試圖編寫一個SQL查詢( using PHP and MYSQL ),該查詢根據某種條件從表中選擇適當的行。

我做了一些研究,並且已經擺弄了幾天,但沒有運氣。

因此,我有一個名為Friendship_Request的表。 盡管該表有幾列,但其中一列稱為Requester_ID ,另一列稱為Requestee_ID 如果其中一列與我在查詢中傳遞的值匹配(例如userID ),那么我希望查詢將我帶回另一列中的值。 例如,

在此處輸入圖片說明

如果我將200作為用戶ID傳遞,則查詢應返回201、400和901。如何執行此操作? 這有名字嗎? 我什至不知道Google怎么辦。

謝謝你的時間。

SELECT if(Requester_ID=200, Requestee_ID, Requester_ID) as friendid FROM Friendship_Request WHERE Requester_ID = 200 OR Requestee_ID=200;

希望此查詢能解決您的問題。

在此處輸入圖片說明 首先,我們獲取所有與userID相等的Requester_ID和Requestee_ID。 然后,如果Requester_ID == userID,則選擇Requestee_ID;如果Requester_ID!= userID,則選擇Requester_ID。

SELECT IF( Requester_ID = 200, Requestee_ID, Requester_ID ) AS Request
FROM Requester
WHERE Requester_ID = 200 OR Requestee_ID = 200

輸出:

請求

201

400

901

一種選擇是使用UNION

SELECT Requester_ID AS ID
  FROM Friendship_Request
 WHERE Requestee_ID = 200
 UNION
SELECT Requestee_ID
  FROM Friendship_Request
 WHERE Requester_ID = 200;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM