티스토리 뷰

엔지니어링

SQL 자주 사용하는 함수

warpmemory 2018. 5. 4. 18:30

1. 문자(열) 함수

LOWER

소문자로 변환

UPPER

대문자로 변환

INITCAP

첫문자 대문자로 변환

CONCAT

문자열 합치기

SUBSTR

서브 문자여 리턴

LENGTH

문자열 길이 리턴

INSTR

문자열 내 문자열 검색

LPAD

왼쪽 패딩 채우기

RPAD

오른쪽 패딩 채우기

LTRIM

왼쪽 공백 제거

RTRIM

오른쪽 공백 제거

TRIM

양쪽 공백 제거

TRANSLATE

문자 치환

REPLACE

문자열 채환

CHR

아스키 값으로 문자 구하기

ASCII

문자로 아스키 값 구하기

2. 숫자 함수

ROUND

소수점 이하 반올림

TRUNC

소수점 이하 버림

CEIL

소수점 이하 올림

MOD

나머지 값 반환

POWER

제곱승

SIGN

양수는 1, 0은 0, 음수는 -1 반환

3. 그룹 함수

SUM

합산값

AVG

평균값

MAX

최대값

COUNT

갯수

4. 날자 함수

SYSDATE, NOW

시스템 날자

TO_CHAR, DATE_FORMAT

날자 포멧 변경

ADD_DAYS, DATE_ADD

날자 변경

4. 기타 함수

NVL, IFNULL

Null 값 치환


SELECT IFNULL(price, 0) FROM products;


price 값이 Null 일경우 0으로 치환

DECODE, CASE WHEN a THEN b ELSE c END

a 이면 b 이고 아니면 c


SELECT CASE WHEN enable = 'T' THEN 'yes' ELSE 'no' END FROM products;


enable 값이 T 이면 'yes' 이니면, 'no'


CASE WHEN a THEN b WHEN c THEN d end 형태로 사용도 가능하다. => a이면, b이고, c이면, d

INET_ATON

아이피 주소를 10진수로 변경

SELECT INET_ATON("192.168.1.1");

1
2
3
4
5
6
+--------------------------+
| INET_ATON("192.168.1.1") |
+--------------------------+
|               3232235777 | 
+--------------------------+
1 row in set (0.00 sec)
cs

INET_NTOA

10진수를 아이피 주소로 변경

SELECT INET_NTOA(3232235777);

1
2
3
4
5
6
+-----------------------+
| INET_NTOA(3232235777) |
+-----------------------+
| 192.168.1.1           | 
+-----------------------+
1 row in set (0.00 sec)
cs

DISTINCT

중복 제거

SELECT DISTINCT column1, column2, ... FROM table_name;

동일 결과 셀렉트 제외

CAST

형변환

SELECT CAST('10' AS UNSIGNED);


1
2
3
4
5
6
+------------------------+
| CAST('10' AS UNSIGNED) |
+------------------------+
|                     10 | 
+------------------------+
1 row in set (0.00 sec)
cs


레퍼런스


댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
페이지
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
글 보관함