저는 무료 텍스트 검색을 처음 사용 했으므로 초보자 용 질문을 용서하십시오. 내가 jim smith
반환을 검색 하시나요 예를연결된 열 전체 텍스트 검색?
- 에 대한 그래서
를 연결된 세 개의 컬럼에 대한 자유 텍스트 검색을 수행 할FirstName + ' ' + LastName + ' ' + Organization
Create FullText Index on Contacts( FirstName, LastName, Organization ) Key Index PK_Contacts_ContactID Go
: 나는 다음과 같은 전체 텍스트 인덱스가 있다고 가정 Jim Smith라는 이름의 모든 연락처
smith ibm
을 검색하면 Smith라는 이름의 모든 연락처가 반환됩니다. t IBM
이것은 꽤 일반적인 시나리오처럼 보입니다. 나는 이것이 일하기를 기대했을 것입니다 : smith OR ibm
; 이것은 분명히 작동 할 것입니다 : smith OR ibm
; 그것은 IBM에서 일하지 않는 많은 스미스와 그 반대로 돌아갑니다. 놀랍게도 smith AND ibm
을 검색하면 동일한 결과가 나타납니다.
이 내가 원하는 것을 ...
Select c.FirstName, c.LastName, c.Organization
from Contacts c
where Contains(*, 'smith') and Contains(*, 'ibm')
...하지만 그때는 사용자로부터 오는 쿼리를 매개 변수화 할 수 없습니다 - 나는 단어로 자신을 검색 문자열을 분해하고 조립해야 파리에서는 SQL이 추악하고 안전하지 않습니다.
감사합니다. 계산 된 열/트리거 방식을 사용하여 SearchText 필드를 채우고 색인을 생성했습니다. –