如何避免查询结果出现笛卡尔积?
答案:3 悬赏:30 手机版
解决时间 2021-03-20 05:40
- 提问者网友:niaiwoma
- 2021-03-19 18:34
如何避免查询结果出现笛卡尔积?
最佳答案
- 五星知识达人网友:第幾種人
- 2021-03-19 18:43
1、可以想象你表中相同的字段应该是多对多的关系,只要把其中一个表里的数据改成没有重复的就可以了,如果允许的话。
2、如果不允许该数据,那就要麻烦些了,你要人为的再找几个字段,或者再添加几个新字段,是的这两个表满足上面第一种情况。
************
补充:
最好是在设计表的时候避免,把两个表关联的字段,在其中一个表中让他作为主键出现,这样一劳永逸。
************
---
以上,希望对你有所帮助。
2、如果不允许该数据,那就要麻烦些了,你要人为的再找几个字段,或者再添加几个新字段,是的这两个表满足上面第一种情况。
************
补充:
最好是在设计表的时候避免,把两个表关联的字段,在其中一个表中让他作为主键出现,这样一劳永逸。
************
---
以上,希望对你有所帮助。
全部回答
- 1楼网友:渡鹤影
- 2021-03-19 19:36
如果要压缩重复的话用distinct;你也可以先将两个表中需要的数据通过子查询查出来,然后将这些子查询当作表来连接。(有时候一时想不到解决方法,用子查询不失为一个好办法。)
至于你具体的情况,因为你的表述我实在看不出来是具体的意思是什么,也只能泛泛的给你点建议了,希望对你有用
至于你具体的情况,因为你的表述我实在看不出来是具体的意思是什么,也只能泛泛的给你点建议了,希望对你有用
- 2楼网友:鱼芗
- 2021-03-19 19:03
出现笛卡尔积是你的连接条件写的不正确
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯