
Last Updated (Sunday, 09 August 2009 20:19) Sunday, 09 August 2009 19:58
Inner-Join
SQL/86
SELECT e.ename,d.dname
FROM emp e , dept d
WHERE e.deptno = d.deptno ;
SQL/92
SELECT e.ename,d.dname
FROM emp e INNER JOIN dept d
ON e.deptno = d.deptno ;
Non-equi join
SQL/86
SELECT e.ename,e.job,e.sal,sg.grade
FROM emp e , salgrade sg
WHERE e.sal BETWEEN sg.losal AND sg.HISAL ;
SQL/92
SELECT e.ename,e.job,e.sal,sg.grade
FROM emp e INNER JOIN salgrade sg
ON e.sal BETWEEN sg.losal AND sg.HISAL ;
Left outer join
SQL/86
SELECT d.department_id,e.last_name
FROM departments d , employees e
WHERE d.department_id= e.department_id(+)
ORDER by d.department_id ;
SQL/92
SELECT d.department_id,e.last_name
FROM departments d LEFT OUTER JOIN employees e
ON d.department_id = e.department_id
ORDER by d.department_id ;
หรือ จะใช้ keyword USING ก็ได้ แต่ให้สังเกตว่า ถ้า column ที่อยู่ภายในวงเล็บ USING(...) ไปปรากฎ อยู่ใน SELECT หรือ ORDER BY จะไม่มีชื่อ alias นำ (d.department_id หรือ e.department_id) ให้ใส่เป็นชื่อ column ไปเลย ตัวอย่างเช่น
SELECT department_id,e.last_name
FROM departments d LEFT OUTER JOIN employees e
USING (department_id)
ORDER by department_id ;
Right outer join
SQL/86
SELECT d.department_id,e.last_name
FROM departments d , employees e
WHERE d.department_id(+) = e.department_id
ORDER by d.department_id ;
SQL/92
SELECT d.department_id,e.last_name
FROM departments d RIGHT OUTER JOIN employees e
ON d.department_id = e.department_id
ORDER by d.department_id ;
หรือจะใช้ keyword USING ก็ได้เช่นกัน
Full outer join
SQL/86
ไม่มี ยังไม่ support full outer join
SQL/92
SELECT d.department_id,e.last_name
FROM departments d FULL OUTER JOIN employees e
ON d.department_id = e.department_id
ORDER by d.department_id ;
หรือจะใช้ keyword USING ก็ได้เช่นกัน
Self Join
SQL/86
SELECT e.ename as "worker_name" , m.ename as "manager_name"
FROM emp e , emp m
WHERE e.mgr = m.empno
SQL/92
SELECT e.ename as "worker_name" , m.ename as "manager_name"
FROM emp e INNER JOIN emp m
ON e.mgr = m.empno ;
oracle database table oracle database data using pl/sql index oracle tutorial password oracle thailand oracle training thailand database administrator oracle thai oracle dba oracle training oracle consulting oracle consultance thai oracle consultance oracle consulting thailand mysql tuning indexes statistics join column migration rman tables production


