Oracle에서 VARCHAR 값을 별도의 열로 분할
일반적인 데이터베이스 변환 요구 사항을 해결하기 위해 사용자는 VARCHAR 값을 별도의 열로 구문 분석하는 방법을 찾는 경우가 많습니다. 열. 일반적인 시나리오에는 각 주석이 특정 문자열로 시작하는 테이블에서 주석을 가져오는 작업이 포함되며, 목표는 주석을 두 개의 개별 열로 분리하는 것입니다.
예를 들어 다음과 같은 반환 값을 고려하세요.
COLUMN_ONE -------------------- 'D7ERROR username'
원하는 출력 위치:
COL_ONE COL_TWO -------------------- D7ERROR username
결과 세트 후에 열 정의가 가능합니까? 구조화?
핵심 질문은 결과 집합이 구조화된 후 새 열을 정의하는 것이 가능한지 여부에 있습니다. 대답은 데이터의 일관성에 따라 달라집니다.
일관된 구분 기호를 위한 솔루션
원하는 두 값 사이에 일관된 구분 기호(예: 단일 공백)가 있다고 가정하면 다음 쿼리를 사용할 수 있습니다.
SELECT SUBSTR(t.column_one, 1, INSTR(t.column_one, ' ')-1) AS col_one, SUBSTR(t.column_one, INSTR(t.column_one, ' ')+1) AS col_two FROM YOUR_TABLE t
이 쿼리는 다음 항목이 처음 나타나는 것을 기준으로 문자열을 분할합니다. 공백 문자.
복잡한 구분 기호를 위한 정규식 솔루션
더 복잡한 시나리오의 경우 Oracle 10g 이상 버전에서는 정규식 지원과 정규식 하위 문자열 기능을 제공합니다. 이는 가변 데이터 패턴을 처리하는 데 더 큰 유연성을 제공합니다.
추가 참고 자료:
위 내용은 Oracle에서 VARCHAR 값을 여러 열로 분할하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!