─━ IT ━─

오라클에서 문자열 자르기 함수 substr() 사용법

DKel 2024. 11. 2. 23:45
반응형

오라클 데이터베이스를 다루는 중에는 문자열을 조작해야 하는 상황이 빈번하게 발생합니다. 이때 유용하게 활용할 수 있는 함수가 `substr()`입니다. 이 함수는 문자열의 특정 위치에서 시작하여 특정 길이만큼의 부분 문자열을 추출하는 기능을 제공합니다. 기본 문법은 다음과 같습니다:
 
```sql
SUBSTR( string, start_position [, length ])
```
 
- `string`은 부분 문자열을 추출할 대상이 되는 원본 문자열입니다.
- `start_position`은 추출을 시작할 문자열의 위치로, 1부터 시작합니다. 만약 음수 값을 사용하면 문자열의 끝에서부터 위치를 계산합니다.
- `length`는 추출할 문자열의 길이입니다. 이 매개변수를 생략할 경우, 지정된 시작 위치부터 문자열의 끝까지 추출됩니다.
 
### 예제 1: 기본 사용법
다음 예시에서는 문자열 'Hello, World!'에서 'World'를 추출합니다.
 
```sql
SELECT SUBSTR('Hello, World!', 8, 5) AS extracted_string FROM dual;
```
이 쿼리는 다음 결과를 반환합니다:
```
extracted_string
----------------
World
```
이 예제에서는 문자열의 8번째 위치에서 시작하여 5개의 문자('World')를 추출합니다.
 
### 예제 2: 음수 위치 사용
이번 예제에서는 문자열 끝에서부터 부분 문자열을 추출하는 방법을 보여줍니다.
 
```sql
SELECT SUBSTR('Hello, World!', -6, 5) AS extracted_string FROM dual;
```
이 경우, 다음과 같은 결과를 얻게 됩니다:
```
extracted_string
----------------
World
```
음수 값을 사용하여 끝에서부터 위치를 계산할 수 있으므로, 여기서는 문자열의 끝에서 6번째 위치에서 시작하여 5개의 문자를 추출할 수 있습니다.
 
### 예제 3: 길이 매개변수 생략
길이 매개변수를 생략한 경우, 지정된 위치부터 문자열 끝까지가 추출됩니다.
 
```sql
SELECT SUBSTR('Hello, World!', 8) AS extracted_string FROM dual;
```
쿼리 결과는:
```
extracted_string
----------------
World!
```
이 경우, 8번째 위치부터 문자열의 끝까지 추출됩니다.
 
오라클의 `substr()` 함수는 이러한 단순하면서도 강력한 기능을 통해 문자열 조작을 더 손쉽게 할 수 있도록 도와줍니다. 상황에 맞게 활용하면 데이터를 가공하는 작업에 큰 도움이 될 것입니다.

반응형