2011-10-04 3 views
1

가정하자 내가 스핑크스 지수라는있다 "worldcities"/ 속성 :sphinxql 쿼리는 어떻게 평가되고 해석됩니까? 다음 필드로와

country_id 번호의 INT 속성

도시 # 텍스트 필드

accent_city 번호 텍스트 필드

및 다음과 같은 sphinxql 쿼리를 실행합니다 :

SELECT * FROM worldcities WHERE country_id = 16 AND MATCH((@(city,accent_city) "New Yor*")) 

스핑크스는 어떻게 평가합니까? s 쿼리? : 먼저 모든 레코드를 검색 한 다음 countr_id로 결과를 필터링합니까? " 'New Yor'로 시작하고 country_id로 필터하는 모든 결과를 제공합니까?"

아니면 국가 ID와 검색 결과를 통해 필터링합니까? "countr_id = 16 인 모든 결과를 제공 한 다음 그 결과를 검색 하시겠습니까?"

희망은 내가 자신을 명확

답변

3

이 하나의 "나에게 '새 YOR'와 country_id에 의해 필터 그들과 함께 시작하는 모든 결과를"했다.

먼저 전체 텍스트 쿼리가 실행됩니다. 그런 다음 필터는 필수가 아닌 일치 항목을 '제외'합니다.

BTW, 쿼리 일부 인용 누락

MATCH('@(city,accent_city) "New Yor*"') 

일치 함수는 문자열을 사용해야합니다.

+0

네, 결국 알아 냈습니다. 프로덕션 쿼리가 아니라 예제입니다. 답변 해주셔서 감사합니다. –

관련 문제