|
请教高手,如何用SQL实现以下查询结果(表搞错了,重新编辑了下,不好意思)
表a | 表b | 查询结果
dm sx jr | dm sx jr | dm sx jr jr
111 a 1 | 111 a 11 | 111 a 1 11
111 b 2 | 111 b 22 | 111 b 2 22
111 c 3 | 111 d 33 | 111 c 3 null
112 a 4 | 113 d 33 | 112 a 4 null
把b表中dm,sx相同的记录, 加入到a表中 ,表a或表b中,每条记录(dm、sx)相同条件无重复记录(dm相同sx就不同,如sx相同dm就不同。)
SELECT a.dm,a.sx,a.jr FROM a left join b on a.dm=b.dm and a.sx=b.sx '实现不了,on只能一个?
谢谢zhaogang1960和 lisan回贴,再请问一下,
sx作为一个变量怎么写?
dim iii as string
iii="a"
SELECT a.dm,a.sx,a.jr,b.jr FROM a left join b on a.dm=b.dm and a.sx='" & iii & "' and b.sx='" & iii & "' '---实现不了
好象SQL数据库中,做视图 也不能用变量,哈哈,,这样做出来了,,
"SELECT s.dm,s.jr,ss.jr FROM (select * from a where sx='" & iii & "' )s left join (select * from b where sx='" & iii & "' )ss on s.dm=ss.dm "
[ 本帖最后由 saler111 于 2011-5-1 17:06 编辑 ] |
|