2013-03-14 67 views
1

所有行我有一個表像顯示在MySQL中包含相同的值(2列過濾器)

| c1 | c2 | 
+----+----+ 
| a | 2 | 
| c | 1 | 
| c | 2 | 
| d | 3 | 
| a | 2 | 
| c | 2 | 
| c | 4 | 
| d | 2 | 

我要選擇從C1什麼樣的價值有相同的C2。我想這

SELECT c2, GROUP_CONCAT(DISTINCT c1) 
FROM table 
group by c2; 

我得到了

| c2 | c1 | 
+----+------+ 
| 1 | c | 
| 2 | a,c,d| <== 
| 3 | d | 
| 4 | c | 

如何選擇僅顯示有在C1超過1倍的值列2行?

回答

2
SELECT c2, GROUP_CONCAT(DISTINCT c1) 
FROM table 
group by c2 HAVING count(distinct c1)>1 
相關問題