SOLR 4.0으로 검색하고 구문 쿼리를 시도 할 때 약간의 문제가 있습니다.SOLR 구문 쿼리
"idx_text_general_ci"라는 필드에는 모든 필드로 구성된 대소 문자를 구분하지 않는 필드 (모두 소문자로 구분)가 있습니다.
<lst name="debug">
<str name="rawquerystring">idx_text_general_ci:marine fitter</str>
<str name="querystring">idx_text_general_ci:marine fitter</str>
<str name="parsedquery">
(+(idx_text_general_ci:marine DisjunctionMaxQuery((id:fitter))))/no_coord
</str>
<str name="parsedquery_toString">+(idx_text_general_ci:marine (id:fitter))</str>
:
/select?defType=edismax&q=idx_text_general_ci:marine%20fitter&debugQuery=true
debugQuery = 실제 출력 아래 -
나는 시도하고 내 SOLR 대신 2 개 단어로 문구를 분할 문구를 검색하기를 거부 구 (해양 배관공)를 검색
위와 같이 쿼리를 두 부분으로 나눕니다 (idx_text_general_ci : marine, id : fitter).
내가 가진 문제는 idx_text_general_ci 필드에 두 번 나타나는 "marine fitter"와 정확하게 일치하지만 "marine"이라는 단어가 3 번 나오는 문서보다 점수가 낮습니다. 내 SOLR이 예상대로 구문을 사용하여 필드를 검색하는 경우에는 그렇지 않을 것입니다.
문구를 따옴표로 묶으면 결과가 0이됩니다.
올바른 방향으로 어떤 도움이나 찔림이라도 대단히 감사하겠습니다. 사전에
감사
알렉스
안녕하세요. 나는 그걸 시도해 봤지만 둘 중 어느 것도 일하지 않았다. 해양 + idx_text_general_ci : 벤치 및 Q = idx_text_general_ci : 쿼리 (들) 나는 시도는 >>> Q = idx_text_general_ci 아래에있는 해양 % 20idx_text_general_ci : 이 그것을 할 올바른 방법 배관공 있습니까? – Alex
Solr 관리자 패널에서이 작업을 시도해 볼 수 있습니까? 거기에서 디버그하는 것이 훨씬 쉽습니다. 브라우저 바에 직접 입력하는 경우 공백이 아닌'+ '기호를 사용하십시오. – Ansari
@Alex 관리자 패널에서 분석 탭을 사용하여 문서의 일부를 입력하고 색인이 생성 된 방법을 확인한 다음 쿼리를 입력하고 처리 방법을 확인할 수 있습니다. 디버그 상자를 확인하면 일치하지 않는 부분을 파악할 수 있습니다. – Ansari