我有一個問題,我似乎無法解決。我有一張跟蹤用戶ID和應用ID的表格。該表是這樣的:返回匹配值,排除那些不匹配的,刪除重複項MYSQL
Library:
ID userID appID
1 1 11122
2 1 65324
3 1 43435
4 2 43435
5 2 50645
6 2 34343
7 4 11122
8 4 55343
查詢應做到以下幾點:
- 返回所選擇的用戶有共同所有的appid值。 (如果用戶4和用戶1被選中並且都具有應用程序11122,它應該顯示應用程序11122)
- 排除不匹配的那些(刪除它們沒有共同的那些,在本例中它將是刪除IDS(55343,65324和43435)
- 刪除重複的結果(這不應該列出相同的應用程序的兩倍。所以APPID 11122應該只顯示一次)
這裏有我想要的PHP示例做:
$array1 = array("a" => "green", "red", "blue");
$array2 = array("b" => "green", "yellow", "red");
$result = array_intersect($array1, $array2);
結果將是「綠色」和「紅色」
這是可能通過MySQL嗎?
我試過幾個不同的東西。其中之一「SELECT DISTINCT appID從庫WHERE userID = 1或userID = 2」,但是此查詢顯示不符合兩個用戶的。還有一個我發現的UNION ALL查詢,但它似乎不是我的問題的解決方案。 – roadrunner 2013-03-24 01:17:27