본문 바로가기
Develop/DATABASE

오라클)기본요소 - 리터럴

by 걸어다니는 종합병원 2022. 9. 18.
반응형

리터럴은 변하지 않는 값.

문자, 숫자, 날짜, 인터벌 리터럴을 사용할 수 있다.

 

문자 리터럴

작은따옴표 ( ' )로 감싸서 사용한다.

'3"C'는 별칭을 지정하지 않아 참조할 수 없는 열명이 반환

 

10.1 버전부터 인용 방식의 문자 리터럴을 사용할 수 있다.


 

숫자 리터럴

숫자 리터럴은 숫자 값을 지정. E는 과학적 표기법을 나타낸다.


날짜 리터럴

날짜 값을 지정한다. 

DATE, TIMESTAMP, TIMESTAMP WITH TIME ZONE을 사용할 수 있다.

 

날짜 값은 NLS 파라미터 설정에 따라 출력 포맷이 결정.

ALTER SESSION SET NLS_DATE_FORMAT         = "YYYY-MM-DD HH24:MI:SS";
ALTER SESSION SET NLS_TIMESTAMP_FORMAT    = "YYYY-MM-DD HH24:MI:SS.FF";
ALTER SESSION SET NLS_TIMESTAMP_TZ_FORMAT = "YYYY-MM-DD HH24:MI:SS.FF TZH:TZM";


인터벌 리터럴

시간의 간격을 지정한다.

YEAR TO MONTH, DAY TO SECOND 리터럴을 사용할 수 있다.

YEAR TO MONTH 리터럴은 년에서 월까지 간격을 지정.

DAY TO SECOND 리터럴은 일에서 초까지의 간격을 지정.

SELECT SYSDATE - (INTERVAL '1' YEAR ) FROM DUAL; -- 년도를 빼기
SELECT SYSDATE + (INTERVAL '1' YEAR ) FROM DUAL; -- 년도를 더하기
SELECT SYSDATE + (INTERVAL '1' YEAR) FROM DUAL; -- 1년 더하기
SELECT SYSDATE + (INTERVAL '1' MONTH)  FROM DUAL; -- 1개월 더하기
SELECT SYSDATE + (INTERVAL '1' DAY) FROM DUAL; -- 1일 더하기
SELECT SYSDATE + (INTERVAL '1' HOUR) FROM DUAL; --1시간 더하기
SELECT SYSDATE + (INTERVAL '1' MINUTE) FROM DUAL; -- 1분 더하기
SELECT SYSDATE + (INTERVAL '1' SECOND) FROM DUAL; -- 1초 더하기
SELECT SYSDATE + (INTERVAL '03:30' HOUR TO MINUTE) FROM DUAL; -- 3시간30분 더하기
SELECT SYSDATE + (INTERVAL '10:30' MINUTE TO SECOND) FROM DUAL; -- 10분30초 더하기
SELECT SYSDATE + (INTERVAL '1-1' YEAR TO MONTH) FROM DUAL; -- 1년 1개월 더하기

HOUR TO MINUTE 혹은 MINUTE TO SECOND는 ':' 구분자를 통해서 구분

연도와 개월의 경우에는 '-' 구분자를 통해 구분해주면 정상적으로 현재 날짜에서 1년 1개월이 더해서 출력.

반응형

'Develop > DATABASE' 카테고리의 다른 글

오라클)산술 연산자  (0) 2022.09.20
오라클)NULL 널  (0) 2022.09.20
오라클)DUAL 테이블  (0) 2022.09.18
오라클)SELECT 문  (0) 2022.09.18
오라클)SAMPLE 절  (0) 2022.09.18

댓글