[SQL] 문자열 자르기

5460 단어 sqlsql

📌 문자열 자르기

Schema : test
Talbe : actor

|  name  | 
+--------+
| 유재석 |

1. 왼쪽에서 문자열 자르기

형식 : left(칼럼명 or 문자열, 자를 길이)

SELECT LEFT(name,1)
FROM test.actor
-- result : 유

SELECT LEFT(name,2)
FROM test.actor
-- result : 유재

SELECT LEFT(name,3)
FROM test.actor
-- result : 유재석

2. 중간에서 문자열 자르기

형식 : SUBSTRING(칼럼명 or 문자열, 시작위치, 길이)

SELECT SUBSTRING(name, 2, 1)
FROM test.actor
-- result : 재

SELECT SUBSTRING(name, 1, 2)
FROM test.actor
-- result : 유재

SELECT SUBSTRING(name, 3, 1)
FROM test.actor
-- result : 석

3. 오른쪽에서 문자열 자르기

형식 : RIGHT(칼럼명 or 문자열, 자를 길이)

SELECT RIGHT(name, 1)
FROM test.actor
-- result : 석

SELECT RIGHT(name, 2)
FROM test.actor
-- result : 재석

SELECT RIGHT(name, 3)
FROM test.actor
-- result : 유재석

4. 구분자(Delimiter) 사용하기

구분자(Delimiter) delim가 count만큼 나오기 전에 str에서 서브 스트링 리턴
형식 : SUBSTRING_INDEX(str, delim, count)

SELECT SUBSTRING_INDEX(name, '석', 1)
FROM test.actor
-- result : 유재
-- '석'이라는 문자가 1번 나오기 전에 서브 스트링 리턴

SELECT SUBSTRING_INDEX(name, '석', 2)
FROM test.actor
-- result : 유재석
-- '석'이라는 문자가 2번 나오기 전에 서브 스트링 리턴
-- 여기서는 '유재석' 이기 때문에 '석'이 1번 나왔으므로 모두 출력

좋은 웹페이지 즐겨찾기