- 실습문제 : HR유저(DB)에서 요구사항 해결 **
SELECT *
FROM EMPLOYEES
WHERE EMPLOYEE_ID = 100;
SELECT *
FROM EMPLOYEES
WHERE SALARY >= 15000;
SELECT EMPLOYEE_ID, LAST_NAME, HIRE_DATE, SALARY
FROM EMPLOYEES
WHERE SALARY >= 15000
;
SELECT employee_id, LAST_NAME, HIRE_DATE, SALARY
FROM EMPLOYEES WHERE SALARY <= 10000
ORDER BY SALARY DESC;
SELECT *
FROM EMPLOYEES
WHERE FIRST_NAME = 'John';
SELECT *
FROM EMPLOYEES
WHERE LOWER (FIRST_NAME) = LOWER ('JOHN')
;
SELECT FIRST_NAME, COUNT(*)
FROM EMPLOYEES
WHERE FIRST_NAME = 'John'
GROUP BY FIRST_NAME
;
SELECT LAST_NAME || ' ' || FIRST_NAME AS NAME, SALARY, HIRE_DATE
FROM EMPLOYEES
WHERE HIRE_DATE >= ('2008-01-01') AND HIRE_DATE < ('2009-01-01')
ORDER BY HIRE_DATE
;
-> 더 좋은방법은 2018년의 연도를 뽑아내는 것
SELECT EMPLOYEE_ID, LAST_NAME || ' ' || FIRST_NAME AS NAME, SALARY, HIRE_DATE
FROM EMPLOYEES
WHERE TO_CHAR (HIRE_DATE, 'YYYY') = '2008'
ORDER BY HIRE_DATE
;
SELECT EMPLOYEE_ID, LAST_NAME || ' ' || FIRST_NAME AS NAME, SALARY
FROM EMPLOYEES
WHERE SALARY >= 20000 AND SALARY <=30000
;
SELECT *
FROM EMPLOYEES
WHERE MANAGER_ID IS NULL
;
SELECT MAX(SALARY) MAX_IT_PROG
FROM EMPLOYEES
WHERE JOB_ID = 'IT_PROG'
;
SELECT *
FROM EMPLOYEES
ORDER BY JOB_ID
;
SELECT JOB_ID, MAX(SALARY)
FROM EMPLOYEES
GROUP BY JOB_ID
ORDER BY MAX(SALARY) DESC
;
SELECT JOB_ID, MAX(SALARY)
FROM EMPLOYEES
GROUP BY JOB_ID
HAVING MAX(SALARY) >= 10000
ORDER BY MAX(SALARY) DESC
;
SELECT *
FROM EMPLOYEES E , (SELECT JOB_ID AS JOBID, AVG(SALARY) AS S_AVG
FROM EMPLOYEES
GROUP BY JOB_ID) A
WHERE E.JOB_ID = A.JOBID
AND E.SALARY >= A.S_AVG
;