◆SQL/MsSQL
[MSSQL] Full-Text Search 전문검색
쿠키린
2024. 9. 22. 21:20
설정을 하고 나서 진행하세요~
Full-Text Search 전문검색
- 데이터에서 부분 문자열 검색을 인덱스 기반으로 최적화할 수 있다.
- EX) 오늘은 날씨가 좋아요. <-- 날씨 부분만 검색 키워드로 해서 찾고 싶을때~
흐름1. Full-Text를 지원하는 Catalog 생성
- 특정 테이블과 컬럼에 Full-Text 인덱스를 생성할 수 있다.
--FULL-TEXT SEARCH 설정 되어 있는지 확인
SELECT FULLTEXTSERVICEPROPERTY('IsFullTextInstalled') AS IsFullTextInstalled;
⏩ 0 아닌 1이 나와야 사용 가능합니다.
-- 카탈로그 생성
CREATE FULLTEXT CATALOG BBSDATAS_catalog;
--PK 생성
ALTER TABLE BBSDATAS
ADD CONSTRAINT PK_BBSDATAS PRIMARY KEY(BBSDATAID);
-- 해당컬럼에 카탈로그 넣어주기
CREATE FULLTEXT INDEX ON BBSDATAS(BODY)
KEY INDEX PK_BBSDATAS ON BBSDATAS_catalog;
--- CREATE FULLTEXT INDEX : Full-Text Search를 사용하기 위한 인덱스를 생성
----- BBSDATAS : FULL-TEXT 인덱스를 생성할 테이블 이름
----- BODY: Full-Text 인덱스를 생성할 컬럼(이제 효율적은 검색 가능해짐!)
--- KEY INDEX: Full-Text 인덱스를 생성하기 위해 기본 키 또는 고유 인덱스가 필요함.
----- PK_BBSDATAS: 이 테이블의 기본 키(PK) 또는 고유 인덱스 이름, 각 행을 고유하게 식별
--- ON BBSDATAS_catalog: 이 부분은 Full-Text 인덱스가 저장될 Full-Text 카탈로그를 지정
-- 실행
SELECT *
FROM BBSDATAS
WHERE CONTAINS(BODY, '2');