MSSQL 쿼리 질문 입니다 0 2 827

by 잭키올 [SQL Query] [2018.01.11 23:56:30]


MSSQL 쿼리 질문을 드립니다.

오라클에서는 찾는 문자열의 N번째 반복되는 문자열의 위치를 찾을 수 있는

함수가 존재하지만, MSSQL 에서는 블로그나 검색을 통하여도 쉽게 찾을 수가 없었습니다.

 

단순히 1~5 정도 수준의 반복 문자열이면 계속 REPLACE 함수를 사용하면서 

변환하여 사용하는 쿼리를 생각해 볼 수 있었는데.. 이 방식은 좀 아닌 것 같아서 질문을 드립니다. 

 

ABCDEABCDEABCDEABCDEABCDEABCDE

라는 문자열이 있다고 가정하면 A 가 5번째 반복되는 문자열의 위치를 찾고 싶습니다.

어떻게 해야 할까요..?

 

by 우리집아찌 [2018.01.12 13:33:35]

사용자 정의 함수 만드셔야 할것 같네요.


by 마농 [2018.01.15 08:27:34]
SELECT v
     , CHARINDEX('A', v
     , CHARINDEX('A', v
     , CHARINDEX('A', v
     , CHARINDEX('A', v
     , CHARINDEX('A', v
     , 1) + 1) + 1) + 1) + 1) x
  FROM (SELECT 'ABCDEABCDEABCDEABCDEABCDEABCDE' v) a
;

 

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입