永发信息网

sqlserver 两表交集之外的其中一表数据

答案:3  悬赏:70  手机版
解决时间 2021-02-06 15:07
  • 提问者网友:沦陷
  • 2021-02-05 20:20
sqlserver 两表交集之外的其中一表数据
最佳答案
  • 五星知识达人网友:鸽屿
  • 2021-02-05 20:49
只用数据某一字段进行子查询是行不通的,因为你有三个字段为联合主腱,如果acode=bcode并不能保证abbrq=bbbrq和ay=by.
正确的方法是左外连接,如果左表a有右表b所没有的任何记录,该记录右表b任何字段为空
select a.* from tableA a left join tableB b on a.acode=b.bcode and a.abbrq=b.bbbrq and a.ay=b.by where b.bcode is null追问建议自建表测试。附上正确答案:select a.* from tableA a where not exists (select 1 from tableB b where a.acode=b.bcode and a.abbrq=b.bbbrq and a.ay=b.by)
全部回答
  • 1楼网友:西风乍起
  • 2021-02-05 22:11
select distinct * from (select * from tableA UNIOn ALL select * from tableB) t
  • 2楼网友:有你哪都是故乡
  • 2021-02-05 21:53
你将交集的数据中的某一列查出来,将其作为一个条件,进行二次查询,例如:select * from tableA where acode not in(select acode from tableA where tableA.ay=tableB.by),“()”内的为你所说的量表有交集的4条数据,祝你好运!
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯