select e.ename,e.job,e.deptno,d.deptno,d.loc from emp e,dept d
where e.deptno(+)=d.deptno
显示如下:
ENAMEJOBDEPTNODEPTNOLOC
CLARKMANAGER1010NEW YORK
KINGPRESIDENT1010NEW YORK
MILLERCLERK1010NEW YORK
SMITHCLERK2020DALLAS
ADAMSCLERK2020DALLAS
FORDANALYST2020DALLAS
SCOTTANALYST2020DALLAS
JONESMANAGER2020DALLAS
ALLENSALESMAN3030CHICAGO
BLAKEMANAGER3030CHICAGO
MARTINSALESMAN3030CHICAGO
JAMESCLERK3030CHICAGO
TURNERSALESMAN3030CHICAGO
WARDSALESMAN3030CHICAGO
ENAMEJOBDEPTNODEPTNOLOC
40BOSTON
但select e.ename,e.job,e.deptno,d.deptno,d.loc from emp e,dept d
where e.deptno=d.deptno(+)
显示如下:
ENAMEJOBDEPTNODEPTNOLOC
SMITHCLERK2020DALLAS
ALLENSALESMAN3030CHICAGO
WARDSALESMAN3030CHICAGO
JONESMANAGER2020DALLAS
MARTINSALESMAN3030CHICAGO
BLAKEMANAGER3030CHICAGO
CLARKMANAGER1010NEW YORK
SCOTTANALYST2020DALLAS
KINGPRESIDENT1010NEW YORK
TURNERSALESMAN3030CHICAGO
ADAMSCLERK2020DALLAS
JAMESCLERK3030CHICAGO
FORDANALYST2020DALLAS
MILLERCLERK1010NEW YORK
在emp表中有一deptno=40在dept表中找不到对应,我真的不太清这两个sql区别在哪?有哪位高手解下 |