전체 텍스트 검색(SQL Server)

SQL Server 2008에서는 SQL Server 테이블의 문자 기반 데이터에 대해 전체 텍스트 쿼리를 실행하는 기능을 응용 프로그램과 사용자에 제공합니다. 지정된 테이블에 대해 전체 텍스트 쿼리를 실행하려면 먼저 데이터베이스 관리자가 해당 테이블에 대한 전체 텍스트 인덱스를 만들어야 합니다. 전체 텍스트 인덱스에는 테이블에 있는 하나 이상의 문자 기반 열이 포함됩니다. 이러한 열의 데이터 형식은 char, varchar, nchar, nvarchar, text, ntext, image, xml, varbinary 또는 varbinary(max) 중 하나일 수 있습니다. 각 전체 텍스트 인덱스는 기본 테이블의 열을 하나 이상 인덱싱하며, 각 열은 특정 언어를 사용할 수 있습니다. SQL Server 2008부터는 전체 텍스트 검색에서 영어, 스페인어, 중국어, 일본어, 아랍어, 벵골어 및 힌디어를 포함하여 50개 이상의 언어를 지원합니다. 지원되는 전체 텍스트 언어의 전체 목록은 sys.fulltext_languages(Transact-SQL)를 참조하십시오.

SQL Server는 지원되는 각 언어에 대해서는 단어 분리기, 형태소 분석기 및 빈 동의어 사전 파일을 제공하고 각 전체 텍스트 언어에 대해서는 선택적으로 언어별 동의어를 정의하여 검색 쿼리의 범위를 확장할 수 있는 파일(동의어 사전 파일)을 제공합니다. 또한 SQL Server 2008부터는 시스템 중지 목록이 제공됩니다. 특정 언어 또는 비즈니스 시나리오를 지원하려면 중지 단어(의미 없는 단어라고도 함)를 추가하거나 제거하여 시스템 중지 목록을 변경하고 필요에 따라 추가 중지 목록을 만들면 됩니다.

SQL Server에서는 전체 텍스트 쿼리를 작성하기 위한 일련의 전체 텍스트 조건자(CONTAINS 및 FREETEXT)와 행 집합 반환 함수(CONTAINSTABLE 및 FREETEXTTABLE)를 제공합니다. 이러한 조건자와 함수를 사용하여 응용 프로그램과 사용자는 단일 단어 또는 구 검색(선택적으로 결과 집합 순위 지정), 다른 단어나 구와 근접한 단어 또는 구 검색, 특정 단어의 동의어 형태 검색 등과 같은 다양한 유형의 전체 텍스트 검색을 수행할 수 있습니다.

[!참고]

전체 텍스트 검색은 SQL Server 데이터베이스 엔진의 선택적 구성 요소입니다. 자세한 내용은 SQL Server 2008 설치를 참조하십시오.

섹션 내용