2013-01-16 4 views
0

사용자가 제품 참조를 찾고 키워드로 검색 할 수있는 응용 프로그램을 개발 중입니다 (SQL 2008의 전체 텍스트 인덱싱 된 테이블의 FREETEXTTABLE 기능 사용). 이러한 참조는 신뢰할 수있는 두 개의 서로 다른 데이터베이스에서 추출됩니다. 그러나 그들은 순위에 따라 동일한 결과를주지 않습니다. 다음과 같은 요청을 사용합니다 :핸들 검색 결과 FREETEXTTABLE을 사용하는 다중 테이블

Select xxx FROM Table as P_TBL 
INNER JOIN FREETEXTTABLE(Table, column,'key words',LANGUAGE 1033) AS F_TBL 
ON P_TB.id = F_TBL.[Key] 
ORDER BY RANK 

이제 양쪽 모두 순위에 따라 가장 관련있는 참조를 찾고 싶습니다.

순위를 추가하는 것이 더 나은지 궁금합니다. 예를 들어 첫 번째 테이블의 순위가 115이고 두 번째 테이블의 순위가 95 인 경우 총 순위는 210입니다. 100 배, 100 배의 레퍼런스가 10000 레퍼런스가 될 것이므로 105,95 레퍼런스는 점수가 같아도 같은 결과가 아니기 때문에 더 적을 것입니다.

모든 조언은 내가 전문가가 아니다 크게

답변

0

을 감상 할 수있다이 상황에 대한 결과의 관련성을 향상시킬 수 있지만 FREETEXTTABLE은 반영되지 않습니다이 경우에, 그래서 하나 개의 테이블에서 곱셈을 0을 반환 할 수 있기 때문에 나는 합계 갈 것 현실. OKAPI BM25 ranking formula에서 유추 할 수 있습니다. 일반적인 순위는 쿼리의 개별 용어를 순위에 따라 계산되어 합산됩니다.