> 데이터 베이스 > MySQL 튜토리얼 > Oracle에서 VARCHAR 값을 여러 열로 분할하려면 어떻게 해야 합니까?

Oracle에서 VARCHAR 값을 여러 열로 분할하려면 어떻게 해야 합니까?

Mary-Kate Olsen
풀어 주다: 2025-01-02 22:05:43
원래의
648명이 탐색했습니다.

How Can I Split a VARCHAR Value into Multiple Columns in Oracle?

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 이상 버전에서는 정규식 지원과 정규식 하위 문자열 기능을 제공합니다. 이는 가변 데이터 패턴을 처리하는 데 더 큰 유연성을 제공합니다.

추가 참고 자료:

  • [SUBSTR](https://docs.oracle.com/cd/E11882_01/server.112/e41084/functions066.htm#SQLRF 00482)
  • [INSTR](https://docs.oracle.com/cd/E11882_01/server.112/e41084/functions414.htm#SQLRF02048)

위 내용은 Oracle에서 VARCHAR 값을 여러 열로 분할하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿