我想找到更频繁订购的skuid对,然后查看这些对。 我的 SKU 表有两列: skuid 和订单。 例如:
orderid | skuid
--------|---------
1 | a
1 | b
1 | c
3 | a
3 | b
3 | d
3 | c
5 | a
5 | b
所以,在这种情况下,它将是: skuid(a,b)对出现3次,(a,c),(b,c)对出现2次。
提前致谢。
答案 0 :(得分:5)
假设(orderid, skuid)
是唯一的:
SELECT t1.skuid
,t2.skuid
,COUNT(*) "count"
FROM UnnamedTable t1
INNER JOIN UnnamedTable t2
ON t1.orderid = t2.orderid
AND t1.skuid < t2.skuid
GROUP BY t1.skuid
,t2.skuid;
连接条件应该为您提供两个skuids的每个独特组合。那么这只是计算一切的问题