inner join出现重复值

比如表A inner join B
on A.ID = B.ID
假如B存在一个ID对应多条信息,那么即使我们在前面select用了distinct ID,
这种连接下还是会出现重复的id

1.首先B中含有ID的后续信息如果被我们select了,即使distinct ID也没有用。那么,需要思考和判断那些后续信息是否对我们的工作有用,无用可以直接删掉不要select,这样只留下distinct ID的数据,明显不会有重复ID

2.如果一定要去除指定的重复ID并留下想要的后续信息,可以使用row_number的三种排序方式留下指定的数据。

3.配合max min进行筛选唯一值,因为最大值最小值一般是唯一的,我们可以通过只留下最大值这种方法使一对多的情况减轻,但有时候这种一对多并不会完全消失,还需要配合使用其他限制条件

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章