Атрибуты Sphinx
Название | Тип | Поиск по match() | Сортировка | Группировка | Фильтрация | Исходное значение |
---|---|---|---|---|---|---|
first column | ID документа | [1] | всегда | |||
(без указания) | Поле | [2] | ||||
sql_attr_uint | Атрибут | |||||
sql_attr_bool | Атрибут | |||||
sql_attr_bigint | Атрибут | |||||
sql_attr_timestamp | Атрибут | |||||
sql_attr_str2ordinal 1) | Атрибут | [3] | [3] | |||
sql_attr_float | Атрибут | |||||
sql_attr_multi | Атрибут | |||||
sql_attr_string | Атрибут | |||||
sql_attr_str2wordcount 2) | Атрибут | [3] | ||||
sql_field_string | Атрибут + Поле | [2] | ||||
sql_field_str2wordcount 3) | Атрибут + Поле | [3] | ||||
sql_joined_field | Поле |
- [1] ID документа всегда уникальный, группировка невозможна
- [2] Фильтруется в главном запросе, остальные поля фильтруются дополнительно
- [3] Возможно, но бессмысленно
- Сортировка - возможность сортировки результатов по данной колонке (несмотря на то, что
str2*
типы перед сохранением преобразуются) - Группировка - возможность группировки
- Фильтрация - возможность использовать дополнительную фильтрацию (
SetFilter
) - Исходное значение - получение исходного значения вместе с результатами (через
SetSelect
) - str2ordinal - преобразует строку в число для сортировки и группировки, при этом не хранит саму строку
- str2wordcount - хранит количество слов в строке, полезно для сортировки и ранжирования
Атрибут sql_attr_string не позволяет делать фильтрацию, возникнет ошибка:
ERROR 1064 (42000): sphinxql: syntax error, unexpected QUOTED_STRING, expecting CONST_INT or CONST_FLOAT or '-' near
string to filter
WARNING: key 'sql_attr_str2ordinal' was permanently removed from Sphinx configuration. Refer to documentation for details.
Начиная с версии 2.2.1 некоторые свойства устарели и были окончательно удалены из конфигурации:
sql_attr_str2ordinal
, sql_attr_str2wordcount
, sql_field_str2wordcount
.