[1] 공백제거 : TRIM(), LTRIM(), RTRIM()
TRIM() : 앞뒤 공백제거
LTRIM() : 왼쪽 공백제거
RTRIM() : 오른쪽 공백제거
SELECT
' 공 백 ',TRIM(' 공 백 ') AS TRIM, -- TRIM() : 앞뒤 공백제거
' 공 백 ',LTRIM(' 공 백 ') AS LTRIM, -- LTRIM() : 왼쪽 공백제거
' 공 백 ',RTRIM(' 공 백 ') AS RTRIM -- RTRIM() : 오른쪽 공백제거
FROM DUAL;
[2] 특정문자제거 : REPLACE()
REPLACE('특정 값', '특정 값에서 제거할문자')
SELECT
REPLACE(' 안녕하세요! 반갑습니다. ',' '),
REPLACE(' ###안녕하세요! ## 반갑습니다.### ','#')
FROM DUAL;
[3] 절대값 ABS()
ABS(숫자)
SELECT ABS(5) AS "절대값 5", ABS(-10) AS "절대값 -10" FROM DUAL;
[4] 반올림 ROUND()
ROUND(숫자, 반올림할 자리수)
SELECT
ROUND(2.3) AS "반올림 2.3",
ROUND(2.5) AS "반올림 2.5"
FROM DUAL;
SELECT
ROUND(2.5678, 1) AS "소숫점1번째 자리까지 출력", -- 소숫점 1번째 자리까지 출력, 소숫점 2번째 자리에서 반올림
ROUND(2.5678,2) AS "소숫점 2번째 자리까지 출력", -- 소숫점 2번째 자리까지 출력, 소숫점 3번째 자리에서 반올림
ROUND(1234.5678,-1) AS "일의 자리에서 반올림", -- 일의 자리에서 반올림
ROUND(1234.5678,-2) AS "십의 자리에서 반올림" -- 십의 자리에서 반올림
FROM DUAL;
[5] 버림 TRUNC()
TRUNC(숫자)
SELECT TRUNC(2.3) AS "버림 2.3", TRUNC(2.5) AS "버림 2.5" FROM DUAL;
[6] 나머지 MOD()
SELECT TRUNC(123/10) AS 몫,MOD(123,10) AS 나머지 FROM DUAL;
[7] 가까운 정수 찾기 : CEIL(본인보다 큰), FLOOR(본인보다 작은)
CEIL(숫자), FLOOR(숫자)
SELECT
CEIL(3.14),
FLOOR(3.14),
CEIL(-3.14),
FLOOR(-3.14)
FROM DUAL;
[8] SYSDATE : 현재시간
SELECT SYSDATE FROM DUAL;
[9] SYSDATE 양식 변경 (시간추가)
--시간형식
-- HH : 12시간 기준
-- HH24 : 24시간 기준
-- MI : 분
-- SS : 초
ALTER SESSION SET NLS_DATE_FORMAT = 'YYYY/MM/DD HH24:MI:SS';
[10] 개월 수 구하기 : MONTHS_BETWEEN()
MONTHS_BETWEEN(날짜, 날짜)
SELECT CEIL(MONTHS_BETWEEN('2022/12/25','2022/03/11')) FROM DUAL;
--달 단위로 계산하기 때문에 결과값은 10
[11] 개월 수 더하기 : ADD_MONTHS()
ADD_MONTH(날짜, 더할값)
SELECT ADD_MONTHS(SYSDATE, 5) FROM DUAL;
[12] 다가올 요일에 해당하는 날짜 구하기 NEXT_DAY()
NEXT_DAY(날짜, 요일);
SELECT NEXT_DAY(SYSDATE, '일요일') AS "돌아오는 일요일" FROM DUAL;
[13] 이번달, 특정달의 마지막 일 구하기 LAST_DAY()
SELECT LAST_DAY(SYSDATE) FROM DUAL; -- 이번 달
SELECT LAST_DAY('2022/07/21') FROM DUAL; -- 특정 달
'DB' 카테고리의 다른 글
Oracle DataBase(DB) SQL 제약조건(CONSTRAINT) 예제 (0) | 2022.03.14 |
---|---|
데이터베이스(Database, DB) 제약조건(CONSTRAINT) (0) | 2022.03.11 |
Oracle DB SQL 문자함수(UPPER, LOWER, INITCAP, LENGTH,LENGTHB, SUBSTR, INSTR, REPLACE, CONCAT, LPAD, RPAD) (0) | 2022.03.08 |
Oracle DB SQL DML 기초(INSERT, SELECT, UPDATE, DELETE) (0) | 2022.03.04 |
Oracle DB SQL DDL 기초 (CREATE, ALTER, DROP) (0) | 2022.03.04 |