티스토리 뷰
* mysql regexp 를 like 처럼 전체구간 일치로 검색 하기
=> regexp 는 like '%XXX%' 처럼 동작.. like 'XXX' 로 쓰는 법
=> java 의 match() 처럼 사용하기 (find() 가 아니라 ..)
예)
WHERE title REGEXP 'MB' 로 하면
MB
MBC
AMBCDFD
가 모두 검색됨
( = LIKE '%MB%' 같은 효과 )
- 바라는건 MB 만 검색하는것
* 방법 1
https://stackoverflow.com/questions/656951/search-for-whole-word-match-in-mysql
REGEXP '[[:<:]]MB[[:>:]]'
앞 뒤 기호는 word-boundary 기호..
이러면 AMBC 는 인식되지 않지만,
A MB C는 인식됨 (공백으로 하나의 단어로 구분되면 일치로 봄)
* 방법 2
REGEXP '^MB$'
정규표현식의 라인 시작 , 끝 기호 사용하여 표시
참고 :
https://stackoverflow.com/questions/37602211/mysql-matching-whitespace-in-regex
'SW개발 > Database' 카테고리의 다른 글
MySQL 5.6 -> MariaDB 10.0 실패 (0) | 2018.04.23 |
---|---|
mysql 백업 / 파일 분할해서 dump 하는 방법 (0) | 2018.04.04 |
MySQL 용량 부족 / the table ... is full / 파편화 문제 (0) | 2018.04.03 |
MySQL Full-Text 검색 / match against (0) | 2018.01.17 |
MySql 5.1 to 5.6 Upgrade (0) | 2017.12.27 |