TO_CHAR 함수 : 숫자형 -> 문자형으로 변환
종류 | 의미 | 사용 예 | 결과 |
9 | 9의 개수만큼 자릿수 | TO_CHAR(1234, '99999') | 1234 |
0 | 빈자리를 0으로 채움 | TO_CHAR(1234, '099999') | 001234 |
$ | $표시를 붙여서 표시 | TO_CHAR(1234, '$9999') | $1234 |
. | 소수점 이하를 표시 | TO_CHAR(1234, '9999.99') | 1234.00 |
, | 천 단위 구분 기호를 표시 | TO_CHAR(1234, '99,999') | 12,345 |
문제 1. EMP 테이블을 조회하여 이름이 ALLEN인 사원의 사번과 이름과 연봉을 출력하세요,
단 연봉은 (SAL * 12) + COMM으로 계산하고 천 단위 구분 기호로 표시하세요.
풀이 :
SELECT EMPNO, ENAME, SAL, COMM, TO_CHAR(SAL * 12 + COMM, '99,999') "SALARY"
FROM EMP
WHERE ENAME = 'ALLEN';
문제 2. PROFESSOR 테이블을 조회하여 201번 학과에 근무하는 교수들의 이름과 급여, 보너스, 연봉을 아래와 같이 출력하세요,
단 연봉은 (PAY * 12) - BOUNS로 계산합니다.
풀이 :
SELECT NAME, PAY, BONUS, TO_CHAR((PAY * 12) + BONUS, '999,999') "TOTAL"
FROM PROFESSOR
WHERE DEPTNO = 201;
* SUSAN의 보너스는 NULL 이라서 결과값에 포함 안됨.
EMP테이블을 조회하여 COMM 값을 가지고 있는 사람들의 EMPNO, ENAME, HIREDATE, 총연봉, 15% 인상 후 연봉을 아래 화면 처럼 출력하세요
단, 총 연봉은 (SAL*12)+COMM으로 계산하고 화면에서는 SAL로 출력되었으며 15%인상한 값은 총 연봉의 15% 인상값 입니다.
(HIREDATE 컬럼의 날짜형식과 SAL 컬럼, 15% UP 컬럼의 $표시와 기호가 나오게 하세요.
풀이 :
SELECT EMPNO, ENAME, TO_CHAR(HIREDATE, 'YYYY-MM-DD') HIREDATE,
TO_CHAR((SAL * 12) + COMM, '$999,999') "SAL",
TO_CHAR(((SAL * 12) + COMM) * 1.15, '$999,999') "15% UP"
FROM EMP
WHERE COMM IS NOT NULL;
TO_NUMBER 함수 : 숫자가 아닌 숫자처럼 생긴 문자를 수자로 바꾸어 주는 함수
TO_DATE 함수 : 날짜가 아닌 날짜처럼 생긴 문자를 날짜로 바꾸어 주는 함수
'데이터베이스 > Oracle SQL' 카테고리의 다른 글
오라클 SQL과 PL/SQL ( 일반 함수 - 2 ) (0) | 2021.07.20 |
---|---|
오라클 SQL과 PL/SQL ( 일반 함수 - 1 ) (0) | 2021.07.17 |
오라클 SQL과 PL/SQL ( 형 변환 함수 ) (0) | 2021.07.15 |
오라클 SQL과 PL/SQL ( 날짜 관련 함수 ) (0) | 2021.07.14 |
오라클 SQL과 PL/SQL ( 숫자관련 함수 ) (0) | 2021.07.12 |