DB/MySQL
[MySQL] SQL 문자열 자르기 - SUBSTR / SUBSTRING / LEFT / RIGHT
동호다찌
2022. 4. 1. 13:42
반응형
ORACLE에서 문자열 자르기
// 기본 데이터
> SELECT "test@test.com" as email;
+---------------------------------------+
| email |
+---------------------------------------+
| test@test.com |
+---------------------------------------+
SUBSTR(문자열, 시작 위치, 길이)
- 문자열 : 원하는 문자열(대상 칼럼)
- 시작 위치 : 시작 위치
- 길이 : 시작위치 부터 마지막 위치
// SUBSTR 함수 사용하여 문자열 자르기
> SELECT SUBSTR("test@test.com", 1, 3) as email1
, SUBSTR("test@test.com", 1, 4) as email2
, SUBSTR("test@test.com", 2, 3) as email3 ;
+--------------------------------------+
| email1 | email2 | email3 |
+--------------------------------------+
| tes | test | est |
+--------------------------------------+
- 첫번 째로 사용한 email1은 시작위치 1부터 시작하여 3번 째 순서에서 자르기
- 두번 째로 사용한 email2는 시작위치 1부터 시작하여 4번 째 순서에서 자르기
- 세번 째로 사용한 email3는 시작위치 2부터 시작하여 3번 째 순서에서 자르기
MySQL에서 문자열 자르기
// 기본 데이터
> SELECT "test@test.com" as email;
+---------------------------------------+
| email |
+---------------------------------------+
| test@test.com |
+---------------------------------------+
SUBSTRING(문자열, 시작 위치, 길이)
- 문자열 : 원하는 문자열(대상 칼럼)
- 시작 위치 : 시작 위치
- 길이 : 시작위치 부터 마지막 위치
// SUBSTRING 함수 사용하여 문자열 자르기
> SELECT SUBSTRING("test@test.com", 1, 3) as email1
, SUBSTRING("test@test.com", 1, 4) as email2
, SUBSTRING("test@test.com", 2, 3) as email3 ;
+--------------------------------------+
| email1 | email2 | email3 |
+--------------------------------------+
| tes | test | est |
+--------------------------------------+
LEFT(문자열, 길이)
- 문자열 : 원하는 문자열(대상 칼럼)
- 시작 위치 : 시작 위치
- 길이 : 시작위치 부터 마지막 위치
// LEFT 함수 사용하여 문자열 자르기
> SELECT LEFT("test@test.com", 4) as email1
, LEFT("test@test.com", 8) as email2
, LEFT("test@test.com", 12) as email3 ;
+-----------------------------------------------------+
| email1 | email2 | email3 |
+-----------------------------------------------------+
| test | test@tes | est@test.com |
+-----------------------------------------------------+
RIGHT(문자열, 길이)
- 문자열 : 원하는 문자열(대상 칼럼)
- 시작 위치 : 시작 위치
- 길이 : 시작위치 부터 마지막 위치
// RIGHT 함수 사용하여 문자열 자르기
> SELECT RIGHT("test@test.com", 4) as email1
, RIGHT("test@test.com", 8) as email2
, RIGHT("test@test.com", 12) as email3 ;
+-----------------------------------------------------+
| email1 | email2 | email3 |
+-----------------------------------------------------+
| .com | est.com | est@test.com |
+------------------------------------------------- ---+
반응형