[오라클로 배우는 데이터베이스 입문]
06장 오라클 함수
문제 풀이 (p174)
Q1. SQL문을 작성해라.
1) EMPNO 열에는 EMP 테이블에서 사원 이름(ENAME)이 다섯 글자 이상이며 여섯 글자 미만인 사원 정보를 출력한다.
2) MASKING_EMPNO 열에는 사원 번호(EMPNO) 앞 두 자리 외 뒷자리를 * 기호로 출력한다.
3) MASKING_ENAME 열에는 사원 이름의 첫 글자만 보여 주고 나머지 글자 수만큼 * 기호로 출력해라.
*RPAD, SUBSTR, LENGTH, CONCAT, || 등 문자 함수 응용하기
Q2. SQL문을 작성해라.
EMP 테이블에서 사원들의 월 평균 근무일 수는 21.5일이다. 하루 근무 시간을 8시간으로 보았을 때 사원들의 하루 급여(DAY_PAY)와 시급(TIME_PAY)을 계산하여 결과를 출력해라.
단, 하루 급여는 소수점 세 번째 자리에서 버리고, 시급은 두 번째 소수점에서 반올림한다.
*숫자 함수 작성 시 반올림 위치 주의
Q3. SQL문을 작성해라.
EMP 테이블에서 사원들은 입사일(HIREDATE)을 기준으로 3개월이 지난 후 첫 월요일에 정직원이 된다. 사원들이 정직원이 되는 날짜(R_JOB)를 YYYY-MM-DD 형식으로 출력해라.
단, 추가 수당(COMM)이 없는 사원의 추가 수당은 N/A로 출력한다.
*자료형을 잘 보고 상황에 맞게 형 변환해주기
Q4. SQL문을 작성해라.
EMP 테이블의 모든 사원을 대상으로 직속 상관의 사원 번호 (MGR)를 다음과 같은 조건을 기준으로 변환해서 CHG_MGR 열에 출력해라.
• 직속 상관의 사원 번호가 존재하지 않을 경우 : 0000
• 직속 상관의 사원 번호 앞 두 자리가 75일 경우 : 5555
• 직속 상관의 사원 번호 앞 두 자리가 76일 경우 : 6666
• 직속 상관의 사원 번호 앞 두 자리가 77일 경우 : 7777
• 직속 상관의 사원 번호 앞 두 자리가 78일 경우 : 8888
•그 외 직속 상관 사원 번호의 경우 : 본래 직속 상관의 사원 번호 그대로 출력
*SUBSTRA, LIKE 등 문자 함수와 CASE문 응용하기
*자료형 통일해주기
'빅데이터 > Oracle SQL | Do it! 오라클로 배우는 데이터베이스 입문' 카테고리의 다른 글
GROUP BY절 | GROUP BY절의 기본 사용법 / 유의점 (0) | 2023.02.20 |
---|---|
다중행 함수란? | SUM / COUNT / MAX / MIN / AVG (0) | 2023.02.19 |
오라클 함수 | NULL 처리 함수 (NVL / NVL2) & DECODE 함수와 CASE문 (0) | 2023.02.17 |
오라클 함수 | 형 변환 함수 (TO_CHAR / TO_NUMBER / TO_DATE) (0) | 2023.02.16 |
오라클 함수 | 날짜 함수 (SYSDATE / ADD_MONTHS / MONTHS_BETWEEN / NEXT_DAY, LAST_DAY / ROUND, TRUNC) (0) | 2023.02.15 |