카테고리 없음

[mssql,오라클,mysql] charindex, instr 문자가 있는 찾는 함수

xemaker 2017. 1. 3. 18:54
db 쿼리를 하다가 이메일 형식에 필수요소인 @과 . 이 없는것을 찾으려고 했다.

그러나!

딱히 함수가 떠오르지 않았다.

그래서 검색하다가 결과를 정리해 본다.

좌측에서 몇 번째에 해당 문자가 있는지 알려주는 함수다.

0 이면 검색하고자 하는 값이 없는것이다.

mssql일 경우
select charindex('a','abcd')
결과 1

오라클일 경우
select instr('abcd','a') from dual
결과 1

mysql일 경우
select instr('abcd','a')
결과 1

오라클과 mysql은 동일한 회사 소유라서 그런지 동일하다..

즉, 내가 하고싶은 이메일주소에서 필수값이 없는것을 해보려면

select * from aa
where instr(aa,'@')=0

aa테이블에 aa컬럼에 이메일주소가 들어있다고 하면 위와 같이 하면 '@' 없는게 나온다.