●문자형으로 데이터 유형 변환하기(TO-CHAR)
1.이름이 scott인 사원의 이름과 입사한 요일을 출력하고 scott의 월급에 천 단위를 구분 할 수 있는 콤마 붙여 출력하기
먼저 select -ename, hiredate을 요일로 변환 + 월급에 천단위 // from -emp // where ename= 'scott'
요일을 변환 하려면?
월급에 천 단위를 입력하려면?
-> TO-CHAR

▶TO_CHAR
TO_CHAR은 숫자형 데이터 유형을 문자형으로 변환하거나 날짜형 데이터 유형을 문자형으로 변환 할 때 사용
ex) TO_CHAR(hiredate, 'RRRR') as 연도, TO_CHAR(hiredate, 'MM') as 달, TO_CHAR(hiredate, 'DD') as 일
2. 1981년도에 입사한 사원의 이름과 입사일 출력하기
WHERE hiredate = '1981' 이라 쓰게되면 형식이 맞지 않아 오류가 나오게 된다

▶EXTRACT
▶날짜 컬럼에서 연도/월/일/시간/분/초 를 추출하기 위해 EXTRACT 함수 사용 가능
ex) EXTRACT(year from hiredate) as 연도 ···
3. 이름과 월급을 출력하며 월급을 출력할 때 천 단위 표기

숫자 형식이 자릿수를 나타내기에, 9가 아닌 다른 숫자여도 가능 할까 해서 실행해본 쿼리 오류가 났다.
숫자는 자릿수를 나타내지만 9가 들어가야 한다.

▶ L
알파벳 L을 사용하면 화폐 단위 ₩(원화)를 붙여 출력가능
ex) TO_CHAR( sal. 'L999,999')
●날짜형으로 데이터 유형 변환하기(TO_DATE)
4. 81년 1월 17일에 입사한 사원의 이름과 입사일 출력하기
-select 이름, 입사일
from emp
where TO_CHAR (hiredate, 'RRRR/MM/DD') = '1981/11/17'

먼저 방금 배운 TO_CHAR을 사용해 쿼리 작성을 해봤고, 결과는 성공적으로 나왔다.
TO_CHAR 이 아닌 TO_DATE 를 사용한다면

날짜 데이터를 검색 할 때는 접속한 세션의 날자 형식을 확인해야 에러가 없다
날짜 형식 확인하는 쿼리는
SELECT *
FROM NLS_SESSION_PARAMTERS
WHERE parameter = 'NLS_DATE_FORMAT';
현재 접속한 세션의 날짜 포맷을 변경하는 명령어- 현재 접속한 세션에서만 유효하다
ALTER SESSION SET NLS_DATE_FORMAT = 'DD/MM/RR';