如何使select語句如下處理多個輸入(列表)在一次還是回到了類似的結果列表作爲單個輸入如何在雙向多對多的關係基於輸入數組中選擇多個值
已經過了幾個小時了,我被卡住了 - 我需要幫助編寫一個mysql語句來從表中找到一個「鏈接」的ID列表。
這個問題背後的想法是爲查詢提供一個id值數組,並讓它從表的兩邊返回鏈接的所有其他id,將其從數組傳遞到每個從數組傳入的id單個逗號勾勒清單。
表結構 「team_permissions」
first_teamID | second_teamID
113 | 112
114 | 112
118 | 117
119 | 112
119 | 113
119 | 114
工作 「得到每一個團隊的權限」 SQL語句 - 需要養活一個列表到這個
SELECT first_teamID AS team_permissions
FROM team_permissions
WHERE second_teamID = ?
UNION ALL
SELECT second_teamID AS team_permissions
FROM team_permissions
WHERE first_teamID = ?
預計單輸入 - >輸出示例 - 此作品
- (? = 112)將產生的結果:[113, 114,119]
- (= 113)將產生 結果:?[112,119]
- (= 117)將 得到的結果:[ 118]
- (= 119?)將 得到的結果:[112,113,114]
預期多輸入 - >輸出示例
- (? = [112,113])將得出結果:[112,113, 114,119]
- (α= [113,119])將產生結果:[112,113,114,119]
- (= [112,114,118])將產生的結果:[112,113,114,117,119]
team_permissions table structure
您正在尋找不支持的樞軸功能xist在mysql中。 您可以通過發出幾個查詢以編程方式執行此操作。 看看這裏的一些例子: https://stackoverflow.com/questions/12004603/mysql-pivot-row-into-dynamic-number-of-columns and here: https://stackoverflow.com/questions/1241178/MySQL的,行至列 –