两表联合查询的sql语句 现有A和B两个表,A有字段a1,a2,a3,a4,B有字段b1,b2,关联是A表中的a2+a3+a4等于B表中的b2,我现在要进行两个表中的查询,不管是表A还是表B,只要有A.a1和B.b1查询的字词,就把表A的纪录显示出来,我需要用一个记录集显示所有符和查询标准的表A中的纪录。即,记录里应有A表a1符合条件的内容还有B表b1符合条件时对应A表的a1内容。请问sql语句应该怎么写? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 select a.*,b.* from a a left join b b on a.a2=b.b1 select * from A where a1=..union allselect A.* from A,B where (A.a2+A.a3+A.a4)=B.b2 to yoki:这样的查询会有重复纪录,因为select * from A where a1=XX(假设条件为XX)部分可能会包括B表中的内容。实际应用中,A表为提问问题表,B表为回复问题表,要求查出所有关于某一特定问题的问题及相关纪录,而该问题可能在B表中提及。 该问题现用这种方式解决:select * from A where a1=XXunion select A.* from A left join B on (A.a2+A.a3+A.a4)=B.b2 where A.a1<>XX and B.b1=XX不知道有没有更有效率的解决办法? 100分求:vb中.ini文件的读写 一个郁闷的问题?????学习COM+却没有练习的机会, 怎么办??? Ado控件访问出错?????急急=、??????在线等待 开发输入法 在VB中写的FUNCTION中的参数,如何定义一个四行四列的数组? 用VB写个音乐播放器需要用到什么函数 vb在红色图片上打字,结果在打字的背景上出现白色小方块 如何把CommonDialog.Color返回的值转换为RGB色的值 关于VScroll的问题。 请教 緊急求救~~~~如何編寫類似每天提示的那種窗口?? 帮助分析
union all
select A.* from A,B where (A.a2+A.a3+A.a4)=B.b2
这样的查询会有重复纪录,因为select * from A where a1=XX(假设条件为XX)部分可能会包括B表中的内容。实际应用中,A表为提问问题表,B表为回复问题表,要求查出所有关于某一特定问题的问题及相关纪录,而该问题可能在B表中提及。
select * from A where a1=XX
union
select A.* from A left join B on (A.a2+A.a3+A.a4)=B.b2 where A.a1<>XX and B.b1=XX不知道有没有更有效率的解决办法?