多表查询去除重复值
表nA:
aid a b c
0 1 1 1
1 2 3 4
2 1 1 1
表nB:
bid a b f
0 2 3 1
1 1 1 1
理想查询结果:
aid a b c bid f
0 1 1 1 1 1
1 2 3 4 0 1
我的查询语句:
- SQL code
SELECT DISTINCT * FROM nA RIGHT JOIN nB ON nA.a=nB.a AND nA.b=nB.b WHERE f=1
欢迎大家阅读《多表查询去除重复值,该如何处理》,跪求各位点评,by 搞代码
但是实际查询结果:
aid a b c bid f
0 1 1 1 1 1
1 2 3 4 0 1
2 1 1 1 1 1
怎样将其中的重复值去掉?
——解决方案——————–
假设AID唯一
SELECT * FROM nA a inner JOIN nB ON nA.a=nB.a AND nA.b=nB.b 个
where not exists(select 1 from na where a.a=a and a.b=b amd a.aid>aid)
——解决方案——————–
SELECT * FROM nA RIGHT JOIN nB ON nA.a=nB.a AND nA.b=nB.b WHERE f=1
group By nA.a, nA.b
——解决方案——————–