2011-11-29 3 views
0

나는 "googled"하고 쉼표로 구분 된 입력 문자열을 단일 열의 행으로 분할하는 마법적이고 우아한 SQL 쿼리를 발견했습니다. 이렇게하면 "위치"대신에 참여가 허용됩니다. select into 또는 insert intoselect, coalesce()where을 사용하여 문자열의 각 값에 하나씩 행을 만들었습니다.Coalesce()를 사용하여 T-SQL에서 쉼표로 구분 된 문자열을 분할합니까?

coalesce()을 사용하여 문자열을 구성하는 예는 많이 있지만 분할하는 데는 그 이상이 없습니다. 나는 또한 그 동안이 솔루션을 발견했습니다

http://www.sqlservercentral.com/articles/T-SQL/62867/

을하지만 나는 내가 (년 전에) 나는 전에 발견 된 보석에 대한 "regoogle"할 수 없습니다, 지금 궁금 하군요.

coalesce()으로 문자열을 분할하는 방법을 본 사람이 있습니까? 그렇다면 그 성능은 어떻게 연구되고 컴파일 된 다양한 SQL 문자열 분리기와 비교됩니까?

+1

나는 OP가 fn_Split()을 원한다고 생각한다 –

+0

당신은 확실히 CHARINDEX가 아니 었는가? – MatBailie

답변

2

COALESCE은 단순히 표현식 그룹에서 첫 번째 null이 아닌 값을 반환합니다. 구분 된 문자열을 마술처럼 분리하지 않습니다.

+0

영어로조차도 COALESCE와 SPLIT라는 단어는 정확히 동의어가 아닙니다 ... – MatBailie

+0

실제로 coalesce()는 마법의 한 부분이었습니다. 나는 charindex도 사용되었다고 확신합니다. –

관련 문제