SQL 문자열 함수
Concat(문자1, 문자2..) : 문자열 연결
- 2023 03 27 같은 날짜 연결시에 사용
mysql> select concat("ad",'cd');
+-------------------+
| concat("ad",'cd') |
+-------------------+
| adcd |
+-------------------+
1 row in set (0.00 sec)
length(문자) : 문자의 길이
- 영어의 경우 length사용
- 한글의 경우 lengrh사용시 *2로 출력 -> char_length로 사용
mysql> select length('가나다');
+------------------+
| length('가나다') |
+------------------+
| 6 |
+------------------+
1 row in set (0.00 sec)
mysql> select length('abcd');
+----------------+
| length('abcd') |
+----------------+
| 4 |
+----------------+
1 row in set (0.00 sec)
mysql> select char_length('가나가');
+-----------------------+
| char_length('가나가') |
+-----------------------+
| 3 |
+-----------------------+
1 row in set (0.00 sec)
substr(문자열, 시작, 개수) = substring(문자열, 시작, 개수): 시작위치에서 개수만큼 추출
- js에서 사용시 > substring(문자열, 시작번지, 끝번지) : 시작번지부터 끝번지-1까지 추출
mysql> select substr('abcdefg',1,5);
+-----------------------+
| substr('abcdefg',1,5) |
+-----------------------+
| abcde |
+-----------------------+
1 row in set (0.00 sec)
left(문자열, 개수) : 앞에서부터 개수만큼
mysql> select left('abcd',2);
+----------------+
| left('abcd',2) |
+----------------+
| ab |
+----------------+
1 row in set (0.00 sec)
right(문자열, 개수) : 뒤에서부터 개수만큼
mysql> select right('abcd',2);
+-----------------+
| right('abcd',2) |
+-----------------+
| cd |
+-----------------+
1 row in set (0.00 sec)
mid(문자열, 시작, 개수) : substring과 동일
mysql> select mid('abcd',2,1);
+-----------------+
| mid('abcd',2,1) |
+-----------------+
| b |
+-----------------+
1 row in set (0.00 sec)
replace(문자, old, new) : 문자열에서 old문자를 new문자로 변경 = 모든 old를 new로 변경
mysql> select replace('abcd','b','g');
+-------------------------+
| replace('abcd','b','g') |
+-------------------------+
| agcd |
+-------------------------+
1 row in set (0.00 sec)
insert(문자, 위치, 길이, 삽입할 문자) : 문자에서 위치의 길이만큼 대체
mysql> select insert('홍길동',2,1,'O');
+--------------------------+
| insert('홍길동',2,1,'O') |
+--------------------------+
| 홍O동 |
+--------------------------+
1 row in set (0.00 sec)
mysql> select insert('980906-1234567',8,7,'OOOOOOO') as '주민등록번호';
+----------------+
| 주민등록번호 |
+----------------+
| 980906-OOOOOOO |
+----------------+
1 row in set (0.00 sec)
'DB > 명령프롬프트 - mysql' 카테고리의 다른 글
[MySQL] SQL 내장함수 : 논리함수 ( if , case ~ when ~then ) (0) | 2023.03.28 |
---|---|
[MySQL] join 사용 (0) | 2023.03.28 |
[MySQL] SQL 내장함수 : 날짜함수 (0) | 2023.03.27 |
[MySQL] SQL 내장함수 : 숫자함수 (0) | 2023.03.27 |
[MySQL] 트랜잭션 (transaction) 생성 (0) | 2023.03.27 |