728x90
* T0_CHAR(날짜 데이터 타입, '지정형식')
: 날짜, 숫자 , 문자 값을 지정한 형식의 VARCHAR2 타입 문자열로 반환하는 함수.
SYSDATE = 2023-05-03(수)
지정형식 | 설명 | EX | 결과 |
CC | 세기 | SELECT TO_CHAR(SYSDATE, 'CC') FROM DUAL; | 21 |
YYYY or YYY or YY or Y | 연도 | SELECT TO_CHAR(SYSDATE, 'YYYY') FROM DUAL; | 2023 |
YEAR |
문자로 표혐된 연도 | SELECT TO_CHAR(SYSDATE, 'YEAR') FROM DUAL; | TWENTY TWENTY-THREE |
Q | 분기 | SELECT TO_CHAR(SYSDATE, 'Q') FROM DUAL; | 2 |
MM | 두 자리 값 월 | SELECT TO_CHAR(SYSDATE, 'MM') FROM DUAL; | 5 |
MONTH | 공백 추가한 월 | SELECT TO_CHAR(SYSDATE, 'MONTH') FROM DUAL; | 5월 |
WW |
연, 월의 주 | SELECT TO_CHAR(SYSDATE, 'WW') FROM DUAL; SELECT TO_CHAR(SYSDATE, 'W') FROM DUAL; |
18 1 (5월 1주차) |
DDD or DD or D |
연, 월, 주의 일 | SELECT TO_CHAR(SYSDATE, 'DDD') FROM DUAL; SELECT TO_CHAR(SYSDATE, 'DD') FROM DUAL; SELECT TO_CHAR(SYSDATE, 'D') FROM DUAL; |
123 03 4 ->일요일 1, 월요일 2 ,화요일 3 , 수요일 4 |
DAY |
요일 이름 | SELECT TO_CHAR(SYSDATE, 'DAY') FROM DUAL; | 수요일 |
*예제 ) 오늘을 기준으로 해당 주(WEEK)의 모든 일자 조회
select to_char(A.DATES, 'yyyy-mm-dd') monday
, to_char(A.DATE+1, 'yyyy-mm-dd') tuesday
, to_char(A.DATE+2, 'yyyy-mm-dd') wednesday
, to_char(A.DATE+3, 'yyyy-mm-dd') thursday
, to_char(A.DATE+4, 'yyyy-mm-dd') friday
, to_char(A.DATE+5, 'yyyy-mm-dd') saturday
, to_char(A.DATE+6, 'yyyy-mm-dd') sunday
from (
select
sysdate - (to_number(to_char(sysdate,'d'))-2) AS DATES
from dual
) A
'DB > SQL' 카테고리의 다른 글
[Oracle] SQL SELECT 쿼리 실행 순서 (0) | 2023.05.10 |
---|---|
[Oracle] 데이터 복구 쿼리(TIMESTAMP) (0) | 2023.05.04 |
[MSSQL]사용자 정의 함수Function 만들기 (0) | 2023.04.27 |
[MSSQL] 권한 있는 테이블 조회 (0) | 2023.04.27 |
[SQL] PK와 UNIQE INDEX 차이점 (0) | 2023.04.06 |