2012-02-06 5 views
0

Я использую сфинкс в моем приложении и его конфигурацияSphinx результат поискового запроса отличается активной записью

мышления сфинкс - 1.3.17

Active Record - 2.3.5

После фиксации - 1,0 .10

Риддл - 1.0.10

Думая сфинкс Raspell - 1.1.1

Raspell -1.3

Я добавил индекс для имени поля в таблице. И я ищу текст «sony», который дает 20 записей в качестве результатов.

Sphinx результат: Sphinx Запросы: "компании" 'Sony'

сфинкс (0.004703s) Найдено 43 результатов

Company Load (1.2ms) SELECT * FROM "компании" WHERE (ID» IN (1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,43,64,83,91))

Здесь Sphinx (0.004703s) Найдено 43 результатов , но в sql он содержит только 20 идентификаторов. из-за этого дает в результате 20 записей.

Если я ищу ту же таблицу, используя активную запись, используя «LIKE» (где lower (name) LIKE «% sony%»), в результате получается 43 записи.

Почему sphinx производит меньшие результаты?

пожалуйста ответ ..

ответ

1

Sphinx будет возвращать не более 1000 результатов и постраничной их по умолчанию на 20 пунктов на каждой странице. Вы можете забрать его:

Article.search 'pancakes', :per_page => 100 

 Смежные вопросы

  • Нет связанных вопросов^_^