BDP超管 发表于 2020-7-30 18:34:47

多表关联为什么会出现重复匹配?

多表关联有3种方式:

[*]Left join:左关联,表示以左表为主表进行关联操作。显示左表中的所有记录,不管是否与关联条件相匹配,而右表中的数据只显示与关联条件相匹配的记录
[*]Inner join:等值关联,表示对两表取交集,只返回两个表中联结字段相等的行
[*]Full join:全关联,表示对两表取并集。返回两表中所有数据,不管是否匹配


其中,选择left join时,有些用户会遇到数据重复匹配了的情况
这时,需要确定你选择的关联条件下,关联出来的是否是唯一的值

举个例子:现在你有2个表,其中共有的字段是序号和分类,你想把B表中的总计匹配到A表中

如果你使用「序号」作为关联字段,合表会出现以下情况:存在重复匹配,出现了4个值,这是由于你的关联条件对应的数值不止一个

所以,为了避免重复匹配的情况,你选择的关联条件对应的值要是唯一的,或者,你可以通过选择多个关联条件来实现

比如使用序号+分类,2个关联条件,这样匹配出来,就不会出现重复数据的情况了


草莓酱 发表于 2020-9-3 15:17:43

学习了:loveliness::loveliness:
页: [1]
查看完整版本: 多表关联为什么会出现重复匹配?