hyeonga_code
Database_61_SQL 활용 실습 3 본문
-- PRACTICE 3
-- 현재 날짜를 표시하는 질의를 작성하고 열 레이블을 Date로 지정
SELECT sysdate, current_date
FROM dual;
-- 각 사원에 대해 사원 번호, 이름, 급여 및 15% 인상된 급여를 정수로 표시하시오. 인상된 급여 열의 레이블을 New Salary로 지정
SELECT employee_id, last_name, salary, ROUND(salary*1.15) "New Salary"
FROM employees;
-- 2번 질의를 수정하여 새 급여에서 이전 급여를 빼는 새 열을 추가하고 레이블을 Increase로 지정하고 수정한 질의를 실행
SELECT employee_id, last_name, salary, ROUND(salary*1.15) "New Salary", ROUND(salary*1.15)-salary AS "Increase"
FROM employees;
-- 이름이 J, K, L 또는 M으로 시작하는 사원을 표시
SELECT last_name
FROM employees
WHERE SUBSTR(last_name, 1, 1) IN ('J', 'K', 'L', 'M');
-- 이름이 J, A 또는 M으로 시작하는 모든 사원의 이름(대문자 표시) 및 이름 길이를 표시
-- 각 열에 적합한 레이블을 지정하시오. 결과를 사원의 이름에 따라 정렬
SELECT UPPER(last_name) "Name" , LENGTH(last_name) "Length"
FROM employees
WHERE SUBSTR(last_name, 1, 1) IN ('J', 'A', 'M')
ORDER BY last_name;
-- 각 사원의 이름을 표시하고 근무 달 수(입사일로부터 현재까지의 달 수)를 계산하여 열 레이블을 MONTHS_WORKED로 지정
-- 결과는 정수로 반올림하여 표시하고 근무 달 수를 기준으로 정렬
SELECT last_name, ROUND(MONTHS_BETWEEN (SYSDATE, hire_date)) MONTHS_WORKED
FROM employees
ORDER BY MONTHS_BETWEEN (SYSDATE, hire_date);
-- 모든 사원의 성 및 급여를 표시하기 위한 query를 작성
-- 급여가 15자 길이로 표시되고 왼쪽에 $ 기호가 채워지도록 형식을 지정
-- 열 레이블을 SALARY 로 지정
SELECT last_name, LPAD(salary, 15, '$') SALARY
FROM employees;
-- 부서 90의 모든 사원에 대해 성(last_name) 및 재직 기간(주 단위)을 표시하도록 query 를 작성
-- 주를 나타내는 숫자 열의 레이블로 TENURE를 지정하고 주를 나타내는 숫자 값을 소수점 왼쪽에서 truncate 하시오.
-- 직원 재직 기간의 내림차순으로 레코드를 표시
SELECT last_name, TRUNC((SYSDATE-hire_date)/7) AS TENURE
FROM employees
WHERE department_id=90
ORDER BY hire_date DESC;
'Oracle Database' 카테고리의 다른 글
Database_61_SQL 활용 실습 5 (0) | 2023.08.19 |
---|---|
Database_61_SQL 활용 실습 4 (0) | 2023.08.19 |
Database_61_SQL 활용 실습 2 (0) | 2023.08.18 |
Database_61_SQL 활용 실습 1 (0) | 2023.08.17 |
Database_60_사용자 접근 제어 실습_SQL 자격증 시험 데이터 기반 (0) | 2023.08.15 |