2014-09-16 2 views
0

7 개의 열을 포함하는 테이블을 가지고 있으며 테이블에 전체 텍스트 인덱스를 만들었습니다. 그러나 나는 freetext()를 사용하는 검색이 2 개의 열에서 어떤 행도 반환하지 않는다는 것을 알아 냈습니다. 그 행은 다른 열에 반환됩니다. 나는 더 행 아래는 반환 실행할 때 다음 일부 열에서는 SQL freetext()가 작동하지 않습니다.

내 쿼리

select * from dbo.ModelCategoryValues 
where freetext(economyvalues,'24,29') 
and freetext(featurevalues,'10') 
and freetext(pricerangevalues,'15') 
and freetext(performancevalues,'18,20') 
and freetext(economyvalues,'22,24') 
and freetext(usevalues,'28') 

결과

그러나

예상이 반환

select * from dbo.ModelCategoryValues 
where freetext(cartypevalues,'1') 

I 행 위에 해당 볼 수 있습니다 데이터. 인덱스를 다시 채우는 것으로부터 다시 만들지 만 성공하지 못했던 모든 것을 시도했습니다.

+0

이 테이블의 스키마를 공유하십시오. – AK47

+0

다음은 db 다이어그램입니다. https://www.dropbox.com/s/hbjhucghck8sfpz/Capture.PNG?dl=0 –

+0

데이터 유형은? – AK47

답변

0

기본적으로 FREETEXT은 "STOPLIST"값이있는 레코드를 제외합니다. 이 문제를 해결하려면 다음 쿼리를 사용하여 StopList를 'OFF'로 설정하십시오. -

ALTER FULLTEXT INDEX ON DealerSearch SET STOPLIST = OFF 
관련 문제