IT 개발/Database
[SQL] SQL 함수 사용법 (문자, 숫자, 날짜 관련 함수)
KADOSHOLY
2023. 12. 9. 22:59
반응형
SQL - SQL 함수 사용법 (문자, 숫자, 날짜 관련 함수)
목차
- SQL 문자관련 함수
- SQL 숫자관련 함수
- SQL 날짜관련 함수
1. SQL 문자관련 함수
1) 대문자, 소문자 변환 관련
- UPPER( ) : 해당 문자를 전부 대문자로 변경함
- LOWER( ) : 해당 문자를 전부 소문자로 변경함
- INITCAP( ) : 첫문자만 대문자, 나머지는 소문자로 변경함
- [참고사항]
- dual 테이블 : Oracle에서 제공하는 가상의 테이블로 SQL 함수 결과를 보기 위해 테스트용으로 사용함
ex1) SELECT * FROM usertable WHERE UPPER(name) = UPPER('kim'); // 대소문자 구분없이 'kim'이 검색됨
ex2) SELECT UPPER('ABCdef'), LOWER('ABCdef'), INITCAP('ABCdef') FROM dual;
2) 문자열 길이, 문자열 일부 추출 및 변환 관련
- LENGTH( ) : 문자열의 길이를 반환합니다.
- SUBSTR('문자열', 시작위치, 추출길이) : 문자열의 일부를 추출하여 반환합니다. (추출길이 생략시 끝까지 추출함)
- REPLACE('문자열', '찾는문자', '바꿀문자') : 문자열 일부를 변환합니다. (바꿀문자 생략시 해당문자를 삭제함)
- LPAD('문자열', 문자열길이, '빈공간 채울문자') : 문자열 길이를 지정하고 왼쪽 빈공간을 특정문자로 채움
- RPAD('문자열', 문자열길이, '빈공간 채울문자') : 문자열 길이를 지정하고 오른쪽 빈공간을 특정문자로 채움
- CONCAT('문자열1', '문자열2') : 두개의 문자열을 하나로 합침
ex1) SELECT LENGTH('abcde'), SUBSTR('abcde', 3, 2), REPLACE('abcde', 'c', 'Y') FROM dual;
ex2) SELECT LPAD('abc', 8, '-'), RPAD('abc', 8, '-'), CONCAT('abc', 'xyz') FROM dual;
2. SQL 숫자관련 함수
- ROUND(숫자, 반올림위치 ) : 특정위치에서 반올림한 값을 반환
- TRUNC(숫자, 버림위치) : 특정위치 이후의 값을 버린후 값을 반환
- CEIL(숫자) : 해당숫자와 가까운 큰 정수
- FLOOR(숫자) : 해당숫자와 가까운 작은 정수
- MOD(숫자, 나눌숫자) : 해당숫자를 나눈 나머지 값을 반환
ex) SELECT ROUND(4.5678, 2), TRUNC(4.5678, 2), CEIL(4.7), FLOOR(4.7), MOD(10, 3) FROM dual;
3. SQL 날짜관련 함수
- SYSDATE : 오라클 서버의 현재 날짜와 시간을 반환 (+/- 연산 가능 ex, SYSDATE-1 : 어제 날짜)
- TO_CHAR('날짜', '출력문자형식') : 날짜/숫자 데이터를 원하는 형태의 문자열로 출력
- TO_DATE('문자열', '날짜형식') : 문자열 데이터를 날짜 형태 데이터로 변환
ex1) SELECT SYSDATE, TO_CHAR(SYSDATE, 'YYYY/MM/DD HH24:MI:SS') FROM dual;
ex2) SELECT TO_DATE('2023-12-09', 'YY/MM/DD') FROM dual;
반응형