긴 문자로 구성된 구조화 되지 않은 텍스트 데이터 → 빠르게 검색하기 위한 부가적인 mysql 기능
✅ Full text search 를 사용해야 하는 이유
만약 특정 단어를 검색하는 쿼리로 LIKE
를 사용한다면, 조회가 한번 이루어질 때마다 전체 테이블을 스캔하게 되고 이는 데이터가 100만 건이 넘는다고 가정한다면 db에 엄청난 부하를 줄 것이고 한참을 기다려야 할 것이다. 따라서 여러 단어들에 인덱스가 설정되어 검색 시에 인덱스를 사용하여 검색 속도를 높이는 Full text search 를 사용해야 한다.
# 형식1
CREATE TABLE 테이블이름(
...
FULLTEXT 인덱스이름 (열이름)
)
# 형식2
CREATE TABLE 테이블이름(
...
);
ALTER TABLE 테이블이름 ADD FULLTEXT (열이름);
# 형식3
CREATE TABLE 테이블이름(
...
);
CREATE FULLTEXT INDEX 인덱스이름 ON 테이블이름 (열이름);
ALTER TABLE 테이블이름 DROP INDEX FULLTEXT(열이름);
굳이 full text index 로 사용 안해도 되는 단어 ex) 모두, 꼭, 아주 등…