์ค๋ผํด(Oracle) - ๊ธฐ๋ณธ HR ๊ณ์ ์ฐ์ต ๋ฌธ์
โ ๏ธ ์ถ๋ ฅ์ ๋ฐ์ดํฐ ์์ด ๋ง์์ ์ผ๋ถ๋ง ์ฌ๋ ธ์ต๋๋ค.
๐ธ EMPLOYEES ํ ์ด๋ธ์์ King์ ์ ๋ณด๋ฅผ ์๋ฌธ์๋ก ๊ฒ์ํ๊ณ ์ฌ์๋ฒํธ, ์ฑ๋ช , ๋ด๋น์ ๋ฌด(์๋ฌธ์๋ก),๋ถ์๋ฒํธ ์ถ๋ ฅํ๋ผ
SELECT EMPLOYEE_ID,
FIRST_NAME || ' ' || LAST_NAME AS NAME,
LOWER(JOB_ID), DEPARTMENT_ID
FROM EMPLOYEES
WHERE LOWER(LAST_NAME) = 'king';
๐ธ EMPLOYEES ํ ์ด๋ธ์์ King์ ์ ๋ณด๋ฅผ ๋๋ฌธ์๋ก ๊ฒ์ํ๊ณ ์ฌ์๋ฒํธ, ์ฑ๋ช , ๋ด๋น์ ๋ฌด(๋๋ฌธ์๋ก),๋ถ์๋ฒํธ ์ถ๋ ฅํ๋ผ
SELECT EMPLOYEE_ID,
FIRST_NAME || ' ' || LAST_NAME AS NAME,
UPPER(JOB_ID), DEPARTMENT_ID
FROM EMPLOYEES
WHERE UPPER(LAST_NAME) = 'KING';
๐ธ DEPARTMENTS ํ ์ด๋ธ์์ ๋ถ์๋ฒํธ, ๋ถ์์ด๋ฆ, ์์น๋ฒํธ๋ฅผ ํฉํ์ฌ ์ถ๋ ฅํ๋ผ
SELECT DEPARTMENT_ID || ' ' || DEPARTMENT_NAME || ' ' || LOCATION_ID AS ๋ถ์์ ๋ณด
FROM DEPARTMENTS;
๐ธ EMPLOYEES ํ ์ด๋ธ์์ ์ด๋ฆ์ ์ฒซ ๊ธ์๊ฐ ‘K’ ๋ณด๋ค ํฌ๊ณ ‘Y’๋ณด๋ค ์ ์ ์ฌ์์ ์ ๋ณด๋ฅผ ์ฌ์๋ฒํธ, ์ด๋ฆ, ์ ๋ฌด, ๊ธ์ฌ, ๋ถ์๋ฒํธ๋ฅผ ์ถ๋ ฅํ๋ผ.
SELECT EMPLOYEE_ID, FIRST_NAME, JOB_ID, SALARY, DEPARTMENT_ID
FROM EMPLOYEES
WHERE SUBSTR(FIRST_NAME,1,1) > 'K' AND SUBSTR(FIRST_NAME,1,1) < 'Y'
ORDER BY FIRST_NAME;
๐ธ EMPLOYEES ํ ์ด๋ธ์์ 20๋ฒ ๋ถ์ ์ค ์ด๋ฆ์ ๊ธธ์ด ๋ฐ ๊ธ์ฌ์ ์๋ฆฟ์๋ฅผ ์ฌ์๋ฒํธ, ์ด๋ฆ, ์ด๋ฆ์ ์๋ฆฟ์(LENGTH), ๊ธ์ฌ, ๊ธ์ฌ์ ์๋ฆฟ์๋ฅผ ์ถ๋ ฅํ๋ผ.
SELECT EMPLOYEE_ID, FIRST_NAME, LENGTH(FIRST_NAME), SALARY, LENGTH(SALARY)
FROM EMPLOYEES
WHERE DEPARTMENT_ID = 20;
๐ธ EMPLOYEES ํ ์ด๋ธ์์ ์ด๋ฆ ์ค ‘e’์์ ์์น๋ฅผ ์ถ๋ ฅํ๋ผ.
SELECT FIRST_NAME,
INSTR(FIRST_NAME,'e') AS ์ด๋ฆ
FROM EMPLOYEES;
๐ธ EMPLOYEES ํ ์ด๋ธ์์ ๋ถ์๋ฒํธ๊ฐ 80์ธ ์ฌ๋์ ๊ธ์ฌ๋ฅผ 30์ผ๋ก ๋๋ ๋๋จธ์ง๋ฅผ ๊ตฌํ์ฌ ์ถ๋ ฅํ๋ผ.
SELECT FIRST_NAME, SALARY,
MOD(SALARY,30)
FROM EMPLOYEES
WHERE DEPARTMENT_ID = 80;
๐ธ EMPLOYEES ํ
์ด๋ธ์์ ํ์ฌ๊น์ง ๊ทผ๋ฌด์ผ ์๊ฐ ๋ช์ฃผ ๋ช์ผ ์ธ๊ฐ๋ฅผ ์ถ๋ ฅํ์ฌ๋ผ.
(๋จ, ๊ทผ๋ฌด ์ผ์๊ฐ ๋ง์ ์ฌ๋ ์์ผ๋ก ์ถ๋ ฅํ์ฌ๋ผ.)
SELECT FIRST_NAME, HIRE_DATE,
TO_CHAR(TRUNC((SYSDATE - HIRE_DATE)/7)) || '์ฃผ ' ||
TO_CHAR(MOD(TRUNC(SYSDATE - HIRE_DATE),7)) || '์ผ' AS "๊ทผ๋ฌด์ฃผ,์ผ"
FROM EMPLOYEES
ORDER BY HIRE_DATE;
๐ธ EMPLOYEES ํ ์ด๋ธ์์ ๋ถ์ 50์์ ๊ธ์ฌ ์์ $๋ฅผ ์ฝ์ ํ๊ณ 3์๋ฆฌ๋ง๋ค , ๋ฅผ ์ถ๋ ฅํ๋ผ
SELECT FIRST_NAME, SALARY,
TO_CHAR(SALARY, '$999,999') AS SALARY1,
DEPARTMENT_ID
FROM EMPLOYEES
WHERE DEPARTMENT_ID = 50;