Database Systems (H) - Dr Chris Anagnostopoulos
CREATE PRIMARY INDEX ON EMPLOYEE(SSN)
means sort by SSN.ORDER BY Name
means sort by Name.SELECT DISTINCT Salary
means sort by Salary to create clusters and then identify the distinct values.SELECT DNO, COUNT (*) FROM EMPLOYEE GROUP BY DNO
means sort by DNO to create clusters.SELECT * FROM relation WHERE selection-conditions
SELECT * FROM EMPLOYEE WHERE SSN = 1234
SELECT * FROM EMPLOYEE WHERE SSN = 1234
SELECT * FROM EMPLOYEE WHERE SSN = 1234
SELECT * FROM EMPLOYEE WHERE DNO = 10
SELECT * FROM EMPLOYEE WHERE SSN > 8;
SELECT * FROM EMPLOYEE WHERE DNO = 5;
SELECT * FROM DEPARTMENT WHERE MGR_SSN = 1234
SELECT * FROM EMPLOYEE WHERE SALARY = 40000;
SELECT * FROM EMPLOYEE WHERE SALARY > 10000 OR NAME LIKE ‘%Chris%’
SELECT * FROM EMPLOYEE WHERE SALARY > 40000 AND NAME LIKE ‘%Chris%’
SELECT * FROM EMPLOYEE E, DEPARTMENT D WHERE E.DNO = D.DNUMBER
SELECT * FROM R, S WHERE R.A = S.B
--A and B are join attributes, e.g., PK, FK.SELECT * FROM EMPLOYEE E, DEPARTMENT D WHERE E.DNO = D.DNUMBER
SELECT * FROM EMPLOYEE E, DEPARTMENT D WHERE D.MGR_SSN = E.SSN
R
S
Result Buffer
Partitioning Phase
Probing Phase
SELECT D.NAME, E.NAME FROM EMPLOYEE E, DEPARTMENT D WHERE E.DNO = D.DNUMBER
SELECT E.NAME, S.NAME FROM EMPLOYEE E, EMPLOYEE S WHERE E.SUPER_SSN = S.SSN
SELECT E.NAME, S.NAME FROM EMPLOYEE E, EMPLOYEE S WHERE E.SUPER_SSN = S.SSN
SELECT E.NAME, S.NAME FROM EMPLOYEE E, EMPLOYEE S WHERE E.SUPER_SSN = S.SSN