v3shin
@v3shin
Веб-шаман

Как искать в sphinx, используя and и or?

Доброго времени суток.
Есть код с примерно такой логикой:
$condition = '';
$order = 'id desc';
$limit = '0,30';

if($params['id'] == 0){
	$condition = '
		(user_id = :user_id and !user_deleted)
		or (from_id = :user_id and !from_deleted)
	';
} else {
	$condition = '
		(user_id = :user_id and from_id = :from_id and !user_deleted)
		or (user_id = :from_id and from_id = :user_id and !from_deleted)
	';
}

if(isset($params['lastId']) && $params['lastId']){
	$condition = '('.$condition.') and id > :lastId';
	if(!isset($params['firstId']) || !$params['firstId']){
		$order = 'id asc';
	}
}
if(isset($params['firstId']) && $params['firstId']){
	$condition = '('.$condition.') and id < :firstId';
}
if(isset($params['text']) && $params['text']){
	$condition = '('.$condition.') and text like :text';
	/* :text = '%'.$params['text'].'%' */
	$limit = -1;
}

Поиск через mysql работает, а как переписать это через sphinx? И еще лучше, если покажете, как это делается на yii1 с использованием DGSphinxSearch extension.
Заранее спасибо.
  • Вопрос задан
  • 328 просмотров
Решения вопроса 1
opium
@opium
Просто люблю качественно работать
Какая то у вас жесть, используйте sphinxql
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@davidnum95
Что значит переписать через sphinx и зачем это нужно?
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы