2017-06-13 165 views
0

表結構獨特價值

Column1 | Column2 | Column 3 | Column 4 . . .. . Column N 

Col1Val1 | Col2Val2 | . . . . . 
Col1Val1 | Col2Val2 | . . . .. 
Col1Val1 | Col2Val3 | . . . . 
Col1Val2 | Col2Val4 | . . . 
Col1Val3 | Col2Val5 | . . 
Col1Val3 | Col2Val6 | . .. 

我想查詢所有的不同列2對列1的每個不同的值,值其計數&值

示例輸出應該是:

Col1Val1 | Col2Val2,Col2Val3 | 2 
Col1Val2 | Col2Val4   | 1 
Col1Val3 | Col2Val5,Col2Val6 | 2 
. 
. 

這是非常可行的查詢+應用程序處理。
這個/類似的輸出可以通過只有sql查詢來實現。

回答

2

您可以使用GROUP_CONCAT()聚集和計數他獨特Column2值:

SELECT 
    Column1, 
    GROUP_CONCAT(DISTINCT Column2), 
    COUNT(DISTINCT Column2) 
FROM yourTable 
GROUP BY Column1 

輸出:

enter image description here

演示在這裏:

Rextester

+0

'Group_Concat'默認情況下會有不同的選擇? –

+0

非常感謝@Tim – abhinsit

+0

@Tim:默認情況下,group_concat沒有做出明確的選擇。任何方法來完成這從查詢? – abhinsit

1

試試這個。

select Column1 , group_concat(distinct column2) ,count(distinct column2) 
from your_table 
group by column1