100分跪求各位大虾
查询的结果是
select U.MailAddr,UA.*
from U left join UA
on U.MailAddr = UA.MailAddr
MailAddr MailAddr UATID UAGID
jlk jlk 2 1
jlk jlk 22 1
jlk jlk 34 1
jlk jlk 11 1
jlk jlk 37 1
jlk jlk 43 1
fwx fwx 2 1
fwx fwx 22 1
fwx fwx 34 1
fwx fwx 11 1
fwx fwx 37 1
fwx fwx 43 1
aaaa aaaa 2 1
aaaa aaaa 22 1
aaaa aaaa 34 1
aaaa aaaa 11 1
aaaa aaaa 37 1
aaaa aaaa 43 1
lulu NULL NULL NULL
aaaa aaaa 49 33
如测试数据,UAGID=1该组里面有MailAddr=aaaa的数据,而组UAGID=33里面也有aaaa的数据、如果
select *
from U left join UA
on U.MailAddr = UA.MailAddr
where UA.UAGID = 1 or UA.UAGID is null
查询结果将得到UAGID=33组里面的aaaa的值,显然这不是我想求的
我现在只想将
select *
from U left join UA
on U.MailAddr = UA.MailAddr and UA.UAGID = 1
where UA.MailAddr is null
里面的UA.UAGID=1这样的条件放在where之后(U表内没有UAGID,两表关联之靠MailAddr)
麻烦各位了