홈>
샘플 데이터 :
id email_address email_new
-------------------------------------------------------------------------------
1 [email protected] [email protected]
2 [email protected]; [email protected] [email protected]
2 [email protected]; [email protected] [email protected]
3 [email protected]; [email protected]; [email protected] [email protected]
3 [email protected]; [email protected]; [email protected] [email protected]
3 [email protected]; [email protected]; [email protected] [email protected]
다음 쿼리를 사용하여 '
;
를 분할했습니다.
'문자열을 행으로 구분 :
SELECT
id, email_address, email_new
FROM
(SELECT
id, email_address,
Split.a.value('.', 'NVARCHAR(max)') AS email_new
FROM
(SELECT
id, email_address, CAST ('<M>' + REPLACE(email_address, '; ', '</M><M>') + '</M>' AS XML) email_new
FROM
table) AS A
CROSS APPLY
email_new.nodes ('/M') AS Split(a)) x
GROUP BY
id, email_address, email_new
질문과 관련된 문제는 모든 분할 이메일 주소에 대해 새 행을 만들고 싶지 않다는 것입니다. 새 열을 추가하고 싶습니다.
id email_1 email_2 email_3
------------------------------------------------------------------------------
1 [email protected] null null
2 [email protected] [email protected] null
3 [email protected] [email protected] [email protected]
email_address 열에는 최대 3 개의 분리 된 전자 메일 주소가 있습니다. 어떤 제안? 3 이상으로 커질 경우 응답이 n 열을 차지할 수 있다면 가장 좋습니다.
- 답변 # 1
관련 자료
- python - 열을 쉼표로 구분 된 문자열로 분할하는 방법은 무엇입니까?
- bash - 열의 일부를 기준으로 CSV 파일 분할
- python - pandas 데이터 프레임 열을 정규식으로 2로 분할
- javascript - 간격 당 문자열을 분할하고 해당 배열 배열에 추가
- awk - 문자열을 문자열로 분할하고 날짜가 1 일보다 오래된 지 확인합니다
- java - Spring MVC에서 int 필드에 대해 0 대신 빈 문자열을 바인딩하는 방법은 무엇입니까?
- r - 모든 행에 특정 문자열이있는 새 열 만들기
- python - 문자열을 나열하고 목록을 문자열로 변환 - 분할없이
- regex - 쉼표로 문자열 분할, 작은 따옴표 및 작은 따옴표의 쉼표 무시
- 게으른 시퀀스 문제로 실행되는 Clojure에서 문자열 분할 시도
- apache spark - 문자열 유형 열의 null 값을 PySpark 0으로 바꿉니다
- Python Pandas에서 문자열을 다른 열로 분할하는 방법
- rust - 파일에서 문자열을 읽고, 분할하고, 하나의 문에서 Vec 을 생성하려면 어떻게해야합니까?
- powershell - 문자열을 Object 배열로 분할
- python - 문자열 열 팬더에서 계산을 수행하는 방법
- pandas - Python에서 열의 값을 기반으로 csv 파일을 두 개의 파일로 분할하려면 어떻게해야합니까?
- R에 세 개의 문자열 범주가있는 새 열 만들기
- Excel VBA에서 문자열 분할로 인해 유형 불일치 오류가 발생합니다
- python - split 메서드를 사용하지 않고 문자열에서 가장 긴 단어를 찾는 방법
- python - Nested dict를 사용하여 다른 열의 문자열을 바꾸는 방법
관련 질문
- SQL Server 데이터베이스 엔진 원격 연결
- Powershell의 SQL 저장 프로시저 실행 실패, 입력 값과 출력 값이 모두 있습니다.
- sql : 모든 조건이 충족되는 경우에만 결과 반환
- SQL Server: xml 데이터 순서로 정렬된 Row_Number() 순서
- 영구적으로 테이블 이름 SQL 별칭 지정
- SQL 서버: 16진수에서 base64로
- SQL은 ISO_year4wkperiod의 마지막 날짜를 얻습니다.
- sql : 테이블 b에 정확히 일치하는 두 개의 요소가 있는 테이블 a의 요소 수 계산
- SQL에서 정확한 시간의 두 날짜의 차이
- MSSQL에서 값이 0인 경우에도 모든 월(1월부터 12월까지)이 표시되도록 하려면 어떻게 해야 합니까?
테스트 데이터
쿼리
결과