2014-12-08 3 views
0

어떤 조건으로 검색을 수행 할 수있는 방법이 있습니까?스핑크스 검색 - 조건으로 결과에서 제외

나는 SetFilter 옵션이 있음을 알았지 만, 내가 필요한 것 같지 않습니다.

일부 열이 비어있는 모든 결과 (예 : company_title)를 제외하고 싶습니다. 그러나 내가 SetFilter을 사용하여 그것을 정의 할 수 없다는 것을 알지 못합니까?

이는 기압과 같은 방법입니다

$results = SphinxSearch::search($search, 'profiles') 
         ->setSelect('id') 
         ->setMatchMode(\Sphinx\SphinxClient::SPH_MATCH_ALL) 
         ->limit(65, $skip); 

답변

0

그럼 당신 수 없습니다 직접 스핑크스 지수는 빈 (IT 인덱스를 텍스트 내용이 아닌 내용의 부족입니다 열을 알고 나던 때문에 :)

그래서 당신은

sql_query = SELECT id, company_title, IF(company_title='',1,0) AS empty_title, ... 

sql_attr_bool = empty_title 

는 그런 다음에는, setFilter

와 함께 사용할 수 있다는 사실을 저장하는 속성을 만들어야합니다 0
->setFilter('empty_title',array(0)); 
+0

예, 지금 이해했습니다. :) 감사! – Ned

관련 문제