首页 > 解决方案 > 由于左连接导致的记录重复

问题描述

我有 2 个名为 Product Category 和 Transactions 的表。在 Transaction Columns 中有两列称为 Transaction ID 和 Product_category_code。在产品类别表中,有两列分别称为 Product_category_code 和 Product Name。我试图通过将相应的产品名称写在事务 ID 旁边来组合这两个表。我正在使用左连接,但不知何故它给了我与右连接相同的结果。

我正在使用的代码是:

SELECT *
FROM [dbo].[Transactions] AS T1
LEFT JOIN [dbo].[Product category] AS T2
ON T1.prod_cat_code=T2.prod_cat_code
order by transaction_id desc

使用左连接后,我在第一笔交易中获得了 5 条记录,而我应该只获得一条。我怎样才能解决这个问题?

T1 的前几个条目是

在此处输入图像描述

T2 的前几个条目是

在此处输入图像描述

输出的前几个条目是

在此处输入图像描述

谢谢

标签: sqljoinleft-joinright-to-left

解决方案


您需要同时加入类别和子类别代码


推荐阅读