전체 텍스트 검색에 사용할 중지 단어와 중지 목록 구성 및 관리Configure and Manage Stopwords and Stoplists for Full-Text Search

전체 텍스트 인덱스가 너무 확장되지 않도록 SQL ServerSQL Server 에는 검색에 도움이 되지 않지만 자주 사용되는 문자열을 무시하는 메커니즘이 있습니다.To prevent a full-text index from becoming bloated, SQL ServerSQL Server has a mechanism that discards commonly occurring strings that do not help the search. 이렇게 무시된 문자열을 중지 단어라고 합니다.These discarded strings are called stopwords. 인덱스를 만드는 동안 전체 텍스트 엔진은 전체 텍스트 인덱스에서 중지 단어를 생략합니다.During index creation, the Full-Text Engine omits stopwords from the full-text index. 즉, 전체 텍스트 쿼리는 중지 단어에서 검색하지 않습니다.This means that full-text queries will not search on stopwords.

중지 단어를 참조하세요.Stopwords. 중지 단어는 특정 언어에서 의미 있는 단어일 수 있습니다.A stopword can be a word with meaning in a specific language. 예를 들어 영어의 경우 "a", "and", "is" 및 "the"와 같은 단어는 검색에 도움이 되지 않으므로 전체 텍스트 인덱스에서 제외됩니다.For example, in the English language, words such as "a," "and," "is," and "the" are left out of the full-text index since they are known to be useless to a search. 또한 중지 단어는 언어적 의미가 없는 토큰일 수 있습니다.A stopword can also be a token that does not have linguistic meaning.

중지 목록.Stoplists. 중지 단어는 데이터베이스에서 중지 목록이라는 개체를 사용하여 관리됩니다.Stopwords are managed in databases using objects called stoplists. 중지 목록 은 전체 텍스트 인덱스와 연결된 경우 해당 인덱스의 전체 텍스트 쿼리에 적용되는 중지 단어 목록입니다.A stoplist is a list of stopwords that, when associated with a full-text index, is applied to full-text queries on that index.

기존 중지 목록 사용Use an existing stoplist

다음과 같은 방법으로 기존 중지 목록을 사용할 수 있습니다.You can use an existsing stoplist in the following ways:

  • 데이터베이스에서 시스템 제공 중지 목록을 사용합니다.Use the system-supplied stoplist in the database. SQL ServerSQL Server에서는 지원되는 각 언어, 즉 기본적으로 지정된 단어 분리기와 연결된 모든 언어에서 가장 일반적으로 사용되는 중지 단어가 포함된 시스템 중지 목록을 제공합니다. ships with a system stoplist that contains the most commonly used stopwords for each supported language, that is for every language associated with given word breakers by default. 시스템 중지 목록 사본을 만들고 여기에서 중지 단어를 추가 및 제거하여 사본을 사용자 지정할 수 있습니다.You can copy the system stoplist and customize your copy by adding and removing stopwords.

    시스템 중지 목록은 리소스 데이터베이스에 설치됩니다.The system stoplist is installed in the Resource database.

  • 현재 서버 인스턴스에서 다른 데이터베이스의 기존 사용자 지정 중지 목록을 사용한 후 필요에 따라 중지 단어를 추가하거나 삭제합니다.Use an existing custom stoplist from another database in the current server instance, then add or drop stopwords as appropriate.

새 중지 목록 만들기Create a new stoplist

Transact-SQL을 사용하여 새 중지 목록 만들기Create a new stoplist with Transact-SQL

CREATE FULLTEXT STOPLIST를 사용합니다.Use CREATE FULLTEXT STOPLIST.

Management Studio를 사용하여 새 중지 목록 만들기Create a new stoplist with Management Studio

  1. 개체 탐색기에서 서버를 확장합니다.In Object Explorer, expand the server.

  2. 데이터베이스를 확장한 다음 전체 텍스트 중지 목록을 만들려는 데이터베이스를 확장합니다.Expand Databases, and then expand the database in which you want to create the full-text stoplist.

  3. 저장소를 확장한 다음 전체 텍스트 중지 목록을 마우스 오른쪽 단추로 클릭합니다.Expand Storage, and then right-click Full-Text Stoplists.

  4. 새 전체 텍스트 중지 목록을 선택합니다.Select New Full-Text Stoplist.

  5. 새 중지 목록의 이름을 입력합니다.Enter your new stoplist's name.

  6. 필요에 따라 중지 목록 소유자로 다른 사용자를 지정합니다.Optionally, specify someone else as the stoplist owner.

  7. 다음 중지 목록 생성 옵션 중 하나를 선택합니다.Select one of the following create stoplist options:

  8. 확인을 클릭합니다.Click OK.

전체 텍스트 쿼리에서 중지 목록 사용Use a stoplist in full-text queries

쿼리에서 중지 목록을 사용하려면 해당 중지 목록을 전체 텍스트 인덱스와 연결해야 합니다.To use a stoplist in queries, you must associate it with a full-text index. 인덱스를 만들 때 중지 목록을 전체 텍스트 인덱스에 연결하거나 나중에 인덱스를 변경하여 중지 목록을 추가할 수 있습니다.You can attach a stoplist to a full-text index when you create the index, or you can alter the index later to add a stoplist.

전체 텍스트 인덱스를 만들고 중지 목록 연결Create a full-text index and associate a stoplist with it

CREATE FULLTEXT INDEX(Transact-SQL)를 사용합니다.Use CREATE FULLTEXT INDEX (Transact-SQL).

기존 전체 텍스트 인덱스와 중지 목록 연결 또는 연결 해제Associate or disassociate a stoplist with an existing full-text index

ALTER FULLTEXT INDEX (Transact-SQL)를 사용합니다.Use ALTER FULLTEXT INDEX (Transact-SQL).

중지 목록에서 중지 단어 변경Change the stopwords in a stoplist

Transact-SQL을 사용하여 중지 목록에서 중지 단어 추가 또는 삭제Add or drop stopwords from a stoplist with Transact-SQL

ALTER FULLTEXT STOPLIST (Transact-SQL)를 사용합니다.Use ALTER FULLTEXT STOPLIST (Transact-SQL).

Management Studio를 사용하여 중지 목록에서 중지 단어 추가 또는 삭제Add or drop stopwords from a stoplist with Management Studio

  1. 개체 탐색기에서 서버를 확장합니다.In Object Explorer, expand the server.

  2. 데이터베이스를 확장한 다음 해당 데이터베이스를 확장합니다.Expand Databases, and then expand the database.

  3. 저장소를 확장한 다음 전체 텍스트 중지 목록을 선택합니다.Expand Storage, and then select Full Text Stoplists.

  4. 변경할 속성이 있는 중지 목록을 마우스 오른쪽 단추로 클릭하고 속성을 선택합니다.Right-click the stoplist whose properties you want to change, and select Properties.

  5. 전체 텍스트 중지 목록 속성 대화 상자에서 다음을 수행합니다.In the Full-Text Stoplist Properties dialog box:

    1. 동작 목록 상자에서 중지 단어 추가, 중지 단어 삭제, 모든 중지 단어 삭제또는 중지 목록 지우기동작 중 하나를 선택합니다.In the Action list box, select one of the following actions: Add stopword, Delete stopword, Delete all stopwords, or Clear stoplist.

    2. 선택한 동작에 대해 중지 단어 입력란이 활성화되면 단일 중지 단어를 입력합니다.If the Stopword text box is enabled for the selected action, enter a single stopword. 이 중지 단어는 고유해야 합니다. 즉, 선택한 언어의 이 중지 목록에 이미 있는 중지 단어는 입력할 수 없습니다.This stopword must be unique; that is, not yet in this stoplist for the language that you select.

    3. 선택한 동작에 대해 전체 텍스트 언어 목록 상자가 활성화되면 언어를 선택합니다.If the Full-text language list box is enabled for the selected action, select a language.

  6. 확인을 클릭합니다.Click OK.

중지 목록 및 해당 용도 관리Manage stoplists and their usage

중지 목록에서 모든 중지 단어 변경View all the stopwords in a stoplist

sys.fulltext_stopwords(Transact-SQL).Use sys.fulltext_stopwords (Transact-SQL).

현재 데이터베이스에 있는 모든 중지 목록에 대한 정보를 얻으려면Get info about all the stoplists in the current database

sys.fulltext_stoplists(Transact-SQL)sys.fulltext_stopwords(Transact-SQL)를 사용합니다.Use sys.fulltext_stoplists (Transact-SQL) and sys.fulltext_stopwords (Transact-SQL).

단어 분리기, 동의어 사전 및 중지 목록 조합의 토큰화 결과 보기View the tokenization result of a word breaker, thesaurus, and stoplist combination

sys.dm_fts_parser(Transact-SQL)를 사용합니다.Use sys.dm_fts_parser (Transact-SQL).

중지 단어로 인해 전체 텍스트 쿼리에 대한 부울 연산이 실패할 경우 오류 메시지 표시 안 함Suppress an error message if stopwords cause a Boolean operation on a full-text query to fail

transform noise words 서버 구성 옵션을 사용합니다.Use the transform noise words Server Configuration Option.

중지 단어 위치에 대한 자세한 정보More info about stopword position

전체 텍스트 인덱스는 중지 단어의 포함을 무시하지만 위치를 고려합니다.Although it ignores the inclusion of stopwords, the full-text index does take into account their position. 예를 들어 "Instructions are applicable to these Adventure Works Cycles models"라는 구를 가정합니다.For example, consider the phrase, "Instructions are applicable to these Adventure Works Cycles models". 다음 표에서는 이 구에서의 단어 위치를 설명합니다.The following table depicts the position of the words in the phrase:

WordWord 위치Position
InstructionsInstructions 11
areare 22
applicableapplicable 33
to 44
thesethese 55
AdventureAdventure 66
WorksWorks 77
CyclesCycles 88
모델models 99

위치 2, 4, 5에 있는 중지 단어 "are", "to", "these"는 전체 텍스트 인덱스에서 제외됩니다.The stopwords "are", "to", and "these" that are in positions 2, 4, and 5 are left out of the full-text index. 그러나 해당 위치 정보는 유지되므로 구의 다른 단어 위치에 영향을 주지 않습니다.However, their positional information is maintained, thereby leaving the position of the other words in the phrase unaffected.

SQL Server 2005에서 의미 없는 단어 업그레이드Upgrade noise words from SQL Server 2005

SQL Server 2005SQL Server 2005 의 의미 없는 단어가 중지 단어로 바뀌었습니다. noise words have been replaced by stopwords. 데이터베이스를 SQL Server 2005SQL Server 2005에서 업그레이드하면 의미 없는 단어 파일이 더 이상 사용되지 않습니다.When a database is upgraded from SQL Server 2005SQL Server 2005, the noise-word files are no longer used. 그러나 의미 없는 단어 파일이 FTDATA\ FTNoiseThesaurusBak 폴더에 저장되므로 나중에 해당 중지 목록을 업데이트하거나 새로 작성할 때 사용할 수 있습니다.However, the noise-word files are stored in the FTDATA\ FTNoiseThesaurusBak folder, and you can use them later when updating or building the corresponding stoplists. 의미 없는 단어 파일을 중지 목록으로 업그레이드하는 방법은 전체 텍스트 검색 업그레이드를 참조하세요.For information about upgrading noise-word files to stoplists, see Upgrade Full-Text Search.