PostgreSQL 정규식 예제를 사용한 SUBSTRING() 함수
⚡ 스마트 요약
PostgreSQL 부분 문자열 예trac`ts` 함수는 선택적으로 시작 위치와 길이를 지정하여 문자열의 일부를 반환하며, POSIX 정규 표현식과 텍스트를 비교하여 숫자나 코드와 같은 패턴을 추출하기도 합니다.

PostgreSQL 하위 문자열?
The PostgreSQL 부분 문자열 함수는 예를 들어 다음과 같은 작업을 수행하는 데 도움이 됩니다.trac`t`를 사용하면 문자열의 일부를 반환합니다. 전체 문자열을 반환하는 대신 문자열의 일부만 반환하므로 코드 정리 및 고정 너비 필드 읽기에 유용합니다.
통사론
The PostgreSQL substring 함수는 다음 구문을 사용합니다.
substring( string [from starting_position] [for length] )
파라미터
부분 문자열 함수에는 다음과 같은 매개변수가 사용됩니다.
| 현 | 데이터 유형이 varchar, char, string 등인 소스 문자열입니다. |
| 시작_위치 | 선택적 매개변수입니다. 이는 ex가 위치한 곳을 나타냅니다.trac문자열의 시작 부분이 표시됩니다. 이 매개변수를 생략하면 예시는 다음과 같습니다.traction은 문자열의 첫 번째 문자인 1번째 위치부터 시작합니다. |
| 길이 | 선택적 매개변수입니다. 출력할 문자 수를 나타냅니다.trac문자열에서 추출합니다. 이 매개변수를 생략하면 함수는 실행되지 않습니다.trac시작 위치부터 문자열 끝까지의 ts 값입니다. |
예
이 예시에서는, 우리는 다음을 보여주고자 합니다.tract 단어의 처음 4개 문자 Guru99 :
SELECT substring('Guru99' for 4);
이 명령은 다음을 반환합니다.
우리는 시작 위치를 지정하지 않았으므로, ex는trac부분 문자열의 추출은 1번째 위치에서 시작되었습니다. 네 개의 문자가 추출되었습니다.trac위의 결과를 반환하도록 설정했습니다.
다음 예에서는 시작 위치를 지정하는 방법을 보여줍니다.
SELECT substring('Guru99' from 1 for 4);
이 명령은 다음을 반환합니다.
우리는 전직을 명시했습니다trac부분 문자열의 추출은 1번째 위치부터 시작해야 하며, 4개의 문자가 선택되어야 합니다.trac테드.
예를 들어 보겠습니다trac문자열에서 t 99 Guru99 :
SELECT substring('Guru99' from 5);
이 명령은 다음을 반환합니다.
시작 위치를 5로 지정했습니다. 예시로 보여줄 문자 수가 5이기 때문입니다.trac테드는 명시되지 않았습니다.traction은 문자열의 끝까지 실행되었습니다.
다음은 또 다른 예입니다.
SELECT substring('Guru99' from 5 for 2);
이 명령은 다음을 반환합니다.
우리는 ex를 시작했습니다trac5번째 위치에 tion이 있고 2개의 문자가 ex였습니다.trac테드.
아래에 주어진 Book 테이블을 고려하십시오:
각 책의 대략적인 제목을 알고 싶습니다. 예를 들어,trac표의 이름 열에서 처음 15자만 가져오세요:
SELECT id, SUBSTRING(name, 1, 15 ) AS name_initial FROM Book ORDER BY id;
이 명령은 다음을 반환합니다.
이제 우리는 모든 책의 이름에 대해 대략적인 아이디어를 얻었습니다.
SQL 정규식을 사용하여 하위 문자열 일치
In PostgreSQL, 당신은 할 수 있습니다trac지정된 POSIX 정규 표현식과 일치하는 부분 문자열을 반환합니다. 이 경우 부분 문자열 함수는 다음 구문을 사용합니다.
SUBSTRING(string FROM matching_pattern)
or
SUBSTRING(string, matching_pattern);
다음은 위 매개변수에 대한 설명입니다. 해당 문자열은 소스 문자열이며, 데이터 형식 `varchar`, `char`, `string` 등이 있습니다. `matching_pattern`은 문자열에서 검색하는 데 사용되는 패턴입니다.
예
SELECT SUBSTRING ( 'Your age is 22', '([0-9]{1,2})' ) as age;
이 명령은 다음을 반환합니다.
입력 문자열은 "당신의 나이는 22세입니다."입니다. 패턴에서 숫자 패턴을 찾고, 해당 패턴이 발견되면 부분 문자열 함수를 실행합니다.trac글자는 두 개뿐입니다.
pgAdmin을 사용하여 부분 문자열을 일치시키는 방법
이제 pgAdmin을 사용하여 이러한 작업을 수행하는 방법을 살펴보겠습니다. 데이터베이스가 필요하지 않은 쿼리는 쿼리 편집기 창에서 직접 실행할 수 있습니다. 다음 단계를 따르세요.
단계 1) pgAdmin 계정에 로그인하세요.
단계 2) pgAdmin에서 쿼리 도구 아이콘을 클릭합니다.
쿼리 편집기 창이 열립니다.
단계 3) 편집기 창에 다음 쿼리를 입력하세요.
SELECT substring('Guru99' for 4);
단계 4) 실행 아이콘을 클릭하여 쿼리를 실행합니다.
단계 5) 쿼리 실행이 완료되었습니다. 다음과 같은 결과가 반환되어야 합니다.
예 2 :
SELECT substring('Guru99' from 1 for 4);
다음을 반환해야 합니다.
다음 예는 다음과 같습니다.
SELECT substring('Guru99' from 5);
다음을 반환해야 합니다.
예 3 :
SELECT substring('Guru99' from 5 for 2);
다음을 반환해야 합니다.
이제 Demo 데이터베이스의 Book 테이블을 사용하여 예제를 실행해 보겠습니다.
단계 1) pgAdmin 계정에 로그인하세요.
단계 2) 왼쪽 탐색 모음에서 데이터베이스를 클릭한 다음 데모를 클릭합니다.
단계 3) 쿼리 편집기에 쿼리를 입력합니다.
SELECT id, SUBSTRING(name, 1, 15 ) AS name_initial FROM Book ORDER BY id;
단계 4) 실행 버튼을 클릭하세요.
다음을 반환해야 합니다.
이제 우리는 모든 책의 이름에 대한 기본 개념을 갖게 되었습니다.
SQL 정규식을 사용하여 하위 문자열 일치
pgAdmin에서 동일한 작업을 수행하려면 다음을 수행하세요.
단계 1) pgAdmin 계정에 로그인하세요.
단계 2) 검색어 도구 아이콘을 클릭합니다.
쿼리 편집기 창이 열립니다.
단계 3) 편집기 창에 다음 쿼리를 입력하세요.
SELECT SUBSTRING ( 'Your age is 22', '([0-9]{1,2})' ) as age;
단계 4) 실행 아이콘을 클릭하여 쿼리를 실행합니다.
다음을 반환해야 합니다.



















