728x90
반응형
CREATE FULLTEXT INDEX Statement
Table에 FullText Index를 생성합니다.
자연어를 이용하여 INDEX를 생성하고 자연어를 이용하여 데이터를 검색할 수 있습니다.
Column FULLTEXT Index 생성 구문
CREATE FULLTEXT INDEX index_name ON table_name (column_name);
Multiple-Column FULLTEXT Index 생성 구문
CREATE FULLTEXT INDEX index_name ON table_name (column_name, column_name);
DROP INDEX Statement
Table에서 FullText Index를 삭제합니다.
FULLTEXT Index 삭제 구문
ALTER TABLE table_name DROP INDEX index_name;
ALTER TABLE Statement
Table에서 FullText Index를 생성하여 추가한다.
Column FULLTEXT Index 생성 구문
ALTER TABLE table_name ADD FULLTEXT index_name (column_name);
Multiple-Column FULLTEXT Index 생성 구문
ALTER TABLE table_name ADD FULLTEXT index_name (column_name, column_name);
SELECT Statement
Table에서 WHERE 절에 MATCH AGAINST 구문을 사용하여 Row를 선택합니다.
FULLTEXT MATCH AGAINST 구문
SELECT column_name, column_name
FROM table_name
WHERE MATCH (column_name, column_name) AGAINST (expressed [search_modifier]);
검색 모드는 NATURAL LANGUAGE MODE (자연어 모드)와 BOOLEAN MODE (블리언 모드)가 있습니다.
- NATURAL LANGUAGE MODE (자연어 모드) : 검색할 문자열을 단어 단위로 분리하여 해당 단어가 포함되는 행을 찾습니다.
- BOOLEAN MODE (블리언 모드) : 검색할 문자열을 단어 단위로 분리하여 해당 단어가 포함되는지 불포함되는지 검색 규칙에 따라 검색하고 결과를 TRUE / FALSE 형태로 처리하여 행을 찾습니다.
AGAINST 구문에 옵션을 설정하지 않으면 NATURAL LANGUAGE MODE (자연어 모드)로 처리됩니다.
MariaDB에 FULLTEXT INDEX 생성하기
-- 단일 FULLTEXT INDEX 생성
CREATE FULLTEXT INDEX IDX_BRD_CONTENT ON INT_BOARD_TB (BRD_CONTENT);
-- NATURAL LANGUAGE MODE
SELECT * FROM INT_BOARD_TB WHERE MATCH(BRD_CONTENT) AGAINST('테스트' IN NATURAL LANGUAGE MODE);
-- BOOLEAN MODE
SELECT * FROM INT_BOARD_TB WHERE MATCH(BRD_CONTENT) AGAINST('테스트' IN BOOLEAN MODE);
-- INDEX 제거
ALTER TABLE INT_BOARD_TB DROP INDEX IDX_BRD_CONTENT;
728x90
반응형
'Database' 카테고리의 다른 글
MariaDB SQL INDEX - INDEX가 적용되지 않는 이유들 (0) | 2022.08.15 |
---|---|
MariaDB SQL INDEX - EXPLAIN (실행 계획), INDEX 처리 여부 (0) | 2022.08.15 |
MariaDB SQL INDEX - CREATE/DROP/ALTER INDEX (0) | 2022.08.14 |
MariaDB SQL JOIN - INNER JOIN, LEFT JOIN (LEFT OUTER JOIN), RIGHT JOIN (RIGHT OUTER JOIN) (0) | 2022.08.14 |
MariaDB SQL JOIN - Driving Table, Nested Loop Join(NL Join), Sort Merge Join, Hash Join (2) | 2022.08.14 |