영문 데이터를 공백을 기준으로 처음 단어로 짜르고 싶습니다.
substring,left 함수들로는 힘들더군요.
good morning =====> good
hi there =====> hi
........ .........
으로 데이터를 공백기준으로 자르고 싶습니다.
또한 한글과 영문을 구분하는 쿼리를 만들 수 있는지도 부탁드립니다.
몇만개의 데이터중에 대부분 영문인데 그중 한글 데이터를
지워야 합니다.
좋은 의견 부탁드립니다.
아무래도 그건 procedure나 function을 이용해야 하는 부분인 듯한데요.
우선은 샘플로 아래와 같이 한번 해봤습니다.
핵슴은 charindex를 이용하여 공백을 찾고 그 다음에도 공백이 있는지를 검토하여
순환을 시켰습니다.
그렇게 하여 출력하도록 했습니다.
특정한 테이블은 없으므로 바로 아래의 구문을 이용해서 출력테스트 하여보면 볼 수 있을 겁니다.
적당한 형태로 변형하여 사용하십시요 ^^
declare @tstr varchar(100), @i int, @tsql varchar(5000)
set @tstr = 'fighing'
select @i = charindex(' ', @tstr)set @tsql = 'select '
if @i > 0 begin while @i > 0 begin set @tsql = @tsql + ' left(''' + @tstr + ''', charIndex('' ' + ''', ''' + @tstr + ''')-1) ,' select @tstr = substring(@tstr, charindex(' ', @tstr) + 1, len(@tstr)) select @i = charindex(' ' , @tstr) end select @tsql = left(@tsql, len(@tsql)-1) set @tsql = @tsql + ', ''' + @tstr + '''' end else set @tsql = @tsql + '''' + @tstr + ''''
exec (@tsql)