如何从关系表中计算我的重复项目数[关闭]
Posted
技术标签:
【中文标题】如何从关系表中计算我的重复项目数[关闭]【英文标题】:How to count number of duplicated items in my from relational table [closed] 【发布时间】:2020-10-08 17:02:51 【问题描述】:我有order
和product
表。订单表如下所示:
uid id ref order_id
--- -- ------ --------------
1 3 abc. 112
2 3 def 124
而且产品表看起来很喜欢这个
uid id sku order_id
--- -- ------ --------------
1 6 rs-123 112
2 7 rs-123 112
2 8 rs-abc 124
所以我需要一个查询来获取所有具有多个相同 sku 的订单,如下所示:
order_id sku qty
-------- --------- --------
112 rs-123 2
可能有 2 个、3 个或更多具有相同 sku 的商品的订单。我不想显示任何没有重复 sku 的订单
我试过了:
SELECT sku, order_id,
COUNT(distinct sku) As Total
FROM products
GROUP BY order_id
HAVING (COUNT(distinct sku) > 1)
但它没有给出预期的结果。有什么想法吗?
【问题讨论】:
见meta.***.com/questions/333952/… 【参考方案1】:你快到了。只需将sku
添加到GROUP BY
子句中,然后从计数中删除distinct
- 您不妨使用COUNT(*)
:
SELECT sku, order_id, COUNT(*) As Total
FROM products
GROUP BY sku, order_id
HAVING COUNT(*) > 1
【讨论】:
以上是关于如何从关系表中计算我的重复项目数[关闭]的主要内容,如果未能解决你的问题,请参考以下文章