MYSQL 2

MySQL - 전문검색 쿼리 (자연어, BOOLEAN)

전문 검색 쿼리 모드MySQL 서버의 전문 검색 쿼리는 자연어 검색모드, BOOLEAN 검색모드를 지원하고 default 는 자연어 검색이다.자연어 검색모드와 같이 사용할 수 있는 검색어 확장 기능도 지원한다.자연어 검색 (NATURAL LANGUAGE MODE)자연어 검색은 검색어에 제시된 단어들을 가장 많이 가지고 있는 순으로 정렬해서 결과를 반환한다.SELECT id, title, contents, MATCH(title, contents) AGAINST ('뿌링클' IN NATURAL LANGUAGE MODE) AS scoreFROM articleWHERE MATCH(title, contents) AGAINST ('MySQL' IN NATURAL LANGUAGE MODE);BOOLEAN 검색자연어 ..

데이터베이스 2024.10.06

MySQL - LIKE 문에서 전문검색으로의 전환

FULL TEXT INDEX검색을 개선해보자데이터가 점차 쌓이다 보니 슬로우 쿼리도 생기고 정확도 순으로의 검색도 도입해보자LIKE문 에서 FULLTEXT조회로 변환한다전문검색MySQL 서버의 인덱스라 하면 B-Tree 자료구조로 단어를 검색이 가능하지만 MySQL 서버는 용량이 큰 문서를 단어 수준으로 잘게 쪼개 문서검색이 가능한데 이것을 전문검색(Full-text Search)라고 한다.예전 버전의 MySQL서버는 일부 스토리지 엔진에서만 제공됐던 전문검색 기능을 8.0 버전부터 InnoDB 스토리지 엔진에서도 사용 가능하도록 개선되었다.문서의 단어들을 분리해 형태소를 찾고 인덱싱하는 방법은 서구권 언어에서는 적합하지만 한국어에는 적합하지 않다. 이것을 보완하기 위해 MySQL 8.0에서부터 형태소나..

데이터베이스 2024.10.03