반응형
MSSQL에서 charindex는
특정 값이 지정한 값에서
몇 번째 인덱스에 위치하는지 찾을 때 사용하는데
오라클의 indexof를 떠올려보면
느낌이 올 것이다
사용방법은
charindex(찾는 값, 값, 시작 위치[필수 아님]);
이렇게 사용하게 된다
charindex('-', '12-34')
이렇게 돌린다고 치면
'12-34'에서
'-'는 3번째에 위치하고 있으니
3이 나오게 된다
시작 위치를 넣었을 경우에는
charindex('-', '12-34', 4)
위와 같이 사용하게 되는데
여기서 4번째 부터는 -가 없으니
0이 나오게 된다
만약 시작 위치를 1,2,3으로 줬을 경우에는
처음과 동일하게 3이 나오게 되는데
1,2,3번째 위치에서 시작해도
결국 '12-34'에서 3번째 위치에 -가 있기 때문이다
4를 주면 4번째 위치에서부터
-를 찾을 수 없기 때문에
0이 나오는 것이다
이외에 charindex으로
자주 사용하는 방법들은 다음과 같다
맨 뒤부터 charindex 사용하기(오라클의 LastIndexOf)
charindex(찾는 값, reverse(값));
2번째 특정 값 가져오기
charindex(찾는 값, 값, charindex(찾는 값, 값) + 1)
반응형
'Error & Fix' 카테고리의 다른 글
MSSQL ROW_NUMBER 사용방법 정리 (0) | 2020.05.27 |
---|---|
MSSQL ORDER BY 특정값별 조건 설정방법 (0) | 2020.05.27 |
MSSQL Server Management Studio 라인 이동 방법 (0) | 2020.05.25 |
MSSQL 문자열이나 이진 데이터는 잘립니다 해결방법 (0) | 2020.05.25 |
ORA-00936: 누락된 표현식 에러 해결방법 (0) | 2020.05.20 |
댓글