Как получить только id документов по API для SphixSearch?

Использую Sphinx Api в PHP.

Нужно получить id документов релевантных поисковому запросу. Метод Query("запрос", 'индекс') возвращает не только id найденных документов, но и кучу дополнительной информации: значения релевантности каждого документа и все прописанные в source (конфига) аттрибуты.

Можно ли как-то возвращать только id-шники, без "лишних" данных для экономии ресурсов?

Возможно ли так же напрямую писать SphinxQL-запросы и получать данные в PHP? Например: $result=myQUERY("SELECT id FROM index WHERE MATCH('синий')");


Ответы (1 шт):

Автор решения: Manticore Search

Можно ли как-то возвращать только id-шники, без "лишних" данных для экономии ресурсов?

$client->SetSelect('id');

Возможно ли так же напрямую писать SphinxQL-запросы и получать данные в PHP?

Через стандартный sphinxapi.php - нет. Можно через любой mysql-клиент (mysqli в php). Eсли всё-таки хочется гибкости и абстракций, то посмотрите в сторону альтернатив: Manticore Search (форк Sphinx) и его php-клиент, в котором такая функциональность есть - https://github.com/manticoresoftware/manticoresearch-php/blob/master/docs/sql.md

→ Ссылка