簡體   English   中英

計算group_concat結果

[英]Count group_concat results

這個問題與mysql group_concat非常相似, 里面有一個計數? 但我不知道如何將其應用於解決我的問題。

我有這個查詢:

SELECT 
    printer AS `Copieur/Imprimante`, 
    GROUP_CONCAT(DISTINCT groupname SEPARATOR "\r\n") AS `Groupes`,
FROM `assoc` 
WHERE groupname 
    IN (SELECT * FROM wanted_groups) 
GROUP BY printer;

這給了我這個:

SQL結果

我想添加每個打印機組的數量,就像

\\simp\DSI - Canon iR C4580 PCL6    |   DSI-ECRITURE (20)
                                    |   DPDSI-ECRITURE (3)
...

希望我的問題很清楚。
謝謝

您可以通過預匯總數據以獲取計數,然后再次匯總以將結果放入所需的格式來執行所需的操作:

SELECT printer AS `Copieur/Imprimante`, 
       GROUP_CONCAT(groupname, ' (', cnt, ')' SEPARATOR '\r\n') AS `Groupes`
FROM (SELECT printer, groupname, COUNT(*) as cnt
      FROM `assoc`
     WHERE groupname IN (SELECT * FROM wanted_groups) 
      GROUP BY printer, groupname
     ) a 
GROUP BY printer;

暫無
暫無

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

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