首页 > Linux操作系统 > Linux操作系统 > 关于join查询的那么点纠结
测试学习了下oracle种的join的用法,结果让我倍受打击啊,简单的测试如下:
SQL> select * from x;
EMPNO MGR ENAME JOB SAL
---------- ---------- ---------- --------- ----------
7566 7839 JONES MANAGER 2975
7698 7839 BLAKE MANAGER 2850
7788 7566 SCOTT ANALYST 3000
7839 KING PRESIDENT 5000
7902 7566 FORD ANALYST 3000
SQL> select e.EMPNO,m.MGR from x e join x m on e.empno=m.mgr where e.mgr=7839;
EMPNO MGR
---------- ----------
7566 7566
7566 7566
SQL> select e.EMPNO,m.MGR from x e join x m on e.empno=m.mgr where m.mgr=7839;
EMPNO MGR
---------- ----------
7839 7839
7839 7839
SQL> select e.EMPNO,m.empno,e.mgr,m.MGR from x e join x m on e.empno=m.mgr;
EMPNO EMPNO MGR MGR
---------- ---------- ---------- ----------
7839 7566 7839
7839 7698 7839
7566 7788 7839 7566
7566 7902 7839 7566
本来以为两个查询结果应该是一样的,但是测试了下,原来是我误会了,故此笔记一下,以此警示。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/28612416/viewspace-773770/ ,如需转载,请注明出处,否则将追究法律责任。