[英]MYSQL - Count of similar results from a group_concat
我有下表:
product_ID | detail_ID
15228 | 1
19450 | 1
21309 | 336
21309 | 425
21310 | 336
26415 | 148
28842 | 497
53443 | 1
我目前正在運行以下查詢:
SELECT product_ID, GROUP_CONCAT(DISTINCT detail_ID separator ', ') AS detailIds
FROM productdetails
GROUP BY product_ID
該查詢給我以下結果:
product_ID | detailIds
15228 | 1
19450 | 1
21309 | 336, 425
21310 | 336
26415 | 148
28842 | 497
53443 | 1
我想返回的是:
group_concat on product_ID | group_concat | count of group_concat
15228, 19450, 53443 | 1 | 3
21309 | 336, 425 | 1
21310 | 336 | 1
26415 | 148 | 1
28842 | 497 | 1
我曾嘗試在group_concat上使用count和group_concat上的group_concat等聚合函數,但是mysql對這些嘗試非常不滿意。 任何建議將不勝感激!
我正在嘗試在MySQL中執行此操作。
目的是找到具有相似功能的產品,然后查看這些相似功能出現的頻率。 謝謝!
將您的查詢用作子查詢並執行另一個group_concat()
:
SELECT GROUP_CONCAT(product_ID) as Products, detailIds, count(*) as NumProducts
FROM (SELECT product_ID, GROUP_CONCAT(DISTINCT detail_ID separator ', ') AS detailIds
FROM productdetails
GROUP BY product_ID
) P
GROUP BY detailIds;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.