master
syneffort 3 years ago
parent 67bdd75c78
commit 5a494bb20b
  1. 12
      join (ansi).sql
  2. 31
      join (cartesian).sql
  3. 13
      simple join.sql

@ -0,0 +1,12 @@
USE Study
GO
-- INNER JOIN
SELECT ENAME, DNAME
FROM EMPLOYEE
INNER JOIN DEPARTMENT ON EMPLOYEE.DNO = DEPARTMENT.DNO
-- OUTER JOIN
SELECT E.ENAME AS EMPLOYEE, M.ENAME AS MANAGER
FROM EMPLOYEE AS E
LEFT OUTER JOIN EMPLOYEE AS M ON E.MANAGER = M.ENO

@ -0,0 +1,31 @@
USE Study
GO
SELECT * FROM EMPLOYEE
SELECT * FROM DEPARTMENT
-- Cartesian product: ¸ðµç Æ©ÇÃ½Ö »ý¼º (same as Cross join)
SELECT * FROM EMPLOYEE, DEPARTMENT
select * from EMPLOYEE
select * from SALGRADE
-- Theta join
SELECT ENAME, GRADE
FROM EMPLOYEE, SALGRADE
WHERE LOWSAL <= SALARY AND SALARY <= HIGHSAL
SELECT ENAME, GRADE
FROM EMPLOYEE, SALGRADE
WHERE SALARY BETWEEN LOWSAL AND HIGHSAL
-- Self join
SELECT E.ENAME AS ENAME, M.ENAME AS MANAGER
FROM EMPLOYEE AS E, EMPLOYEE AS M
WHERE E.MANAGER = M.ENO
-- Mulitple join
SELECT ENAME, GRADE, DNAME
FROM EMPLOYEE, SALGRADE, DEPARTMENT
WHERE SALARY BETWEEN LOWSAL AND HIGHSAL
AND EMPLOYEE.DNO = DEPARTMENT.DNO

@ -0,0 +1,13 @@
USE Study
GO
SELECT * FROM EMPLOYEE
SELECT * FROM DEPARTMENT
SELECT *
FROM EMPLOYEE, DEPARTMENT
WHERE ENO = 103 AND EMPLOYEE.DNO = DEPARTMENT.DNO
SELECT *
FROM EMPLOYEE AS E, DEPARTMENT AS D
WHERE ENO = 103 AND E.DNO = D.DNO
Loading…
Cancel
Save