我有2个表:ar
和ao
所有项目(货号(都存在于ar
中,但有些项目(货号(在ao
中不存在,或者不存在值aotlkd="F"
我试过了:
select ao.aoarom, ar.ararnr , ar.ararir, ar.ararkc
from ao
join ar on ao.aoarnr=ar.ararnr
WHERE ar.ARARNR = '"+ articlenumber+"'
and ao.aotlkd='F'
尝试了左连接和右连接以及外部连接,这没有区别。
我希望它在不存在或ao
aotlkd
未"F"
时返回 nullaoarom
,并在这种情况下返回ararnr, ararir, ararkc
的值
现在,当ao
不存在或aotlkd
未"F"
时,它不会返回任何内容
select ao.aoarom, ar.ararnr , ar.ararir, ar.ararkc
from ar left join (SELECT * FROM ao WHERE ao.aotlkd='F') as ao on ao.aoarnr=ar.ararnr
WHERE ar.ARARNR = '"+ articlenumber+"'
是我会对你的规格做出的。 但是,该规范("我希望它在ao不存在或aotlkd不是"F"时返回anoarom的null,并且在这种情况下还返回ararnr,ararir,ararkc的值(确实太不精确了,无法确定您想要/需要/期望的确切内容。
你试过吗
select aoarom, ararnr , ararir, ararkc
from ao
LEFT join
ar
on ao.aoarnr = ar.ararnr
and ARARNR = '"+ articlenumber+"'
and aotlkd = 'F'
顺便说一句,它将帮助我们了解您是否在ARARNR
和aotlkd
前面加上表名,以便我们知道这些列在哪个表中。