본문 바로가기
MySql

MySQL에서 "전체 단어 일치"검색

by 베이스 공부 2020. 10. 3.
반응형

텍스트 필드에서 키워드를 검색하는 SQL 쿼리를 작성하고 싶지만 "전체 단어 일치"인 경우에만 해당됩니다 (예 : "rid"를 검색 할 때 "arid"와 일치하지 않아야하지만 "제거"와 일치합니다.

MySQL을 사용하고 있습니다.

다행히이 응용 프로그램에서는 성능이 중요하지 않으며 데이터베이스 크기와 문자열 크기가 모두 편안하게 작지만 PHP를 구동하는 것보다 SQL에서 수행하는 것이 좋습니다.

 

해결 방법

 


SELECT *
FROM table 
WHERE keywords REGEXP '[[:<:]]rid[[:>:]]'

2020 년 업데이트 : (실제로는 2018 년 이상)


SELECT *
FROM table 
WHERE keywords REGEXP '\\brid\\b'

또한 두 번째 백 슬래시를 넣어 백 슬래시를 이스케이프해야합니다.

 

참조 페이지 https://stackoverflow.com/questions/656951

 

 

반응형

댓글