【发布时间】:2021-02-16 10:01:05
【问题描述】:
我正在处理一个大型数据表。如果给定项目有超过 1 个目的地,我想检查各个项目及其目的地和目的地计数。
所以在下图中,在我的结果中,我不应该得到葡萄和大米,因为它们只有一个目的地。但我应该得到项目 Apple 和 Orange 的结果。
我写的查询如下。然而它并没有达到目的。
SELECT PrdTbl.Item,,PrdTbl2.cnt
FROM ProductsTable PrdTbl
JOIN
(
SELECT Item,count(*) cnt FROM ProductsTable
GROUP BY Item
HAVING COUNT(*) > 1
) PrdTbl2 ON PrdTbl.Item = PrdTbl2.Item
ORDER BY PrdTbl.Item;
有人可以提出解决方案吗?提前致谢。
编辑:
感谢您的原始答案。
我认为我的问题需要重新表述。我也想按目的地过滤。虽然原始条件保持不变,但我需要删除前往同一目的地的物品。所以在这里,只有苹果和他们各自的目的地是我需要的。橙色应该被删除,因为它去同一个目的地。
【问题讨论】:
-
SELECT PrdTbl.Item,PrdTbl.Destination,PrdTbl2.cnt ...并且您的查询应该可以工作。 -
谢谢...但我忘了提及我的第二个条件..我编辑了我的问题。你能帮忙吗?