API поиска GAE: значение по умолчанию в порядке SortExpression
При настройке порядка сортировки в SortExpression.Builder, строго необходимо установить defaultValue(String,Numeric or Date)
,
Какова цель этого параметра и как он влияет на результаты поиска или порядок сортировки результатов?
1 ответ
Решение
Документы в индексе не обязательны для всех, имеют одинаковые поля. Если вы попытаетесь отсортировать поле, которого нет в некоторых документах, мы используем соответствующее значение по умолчанию для этого документа. Например, если у меня были следующие документы:
doc A: NumberField(name=x, value=7), TextField(name=y, value="hello")
doc B: NumberField(name=x, value=20), TextField(name=y, value="world")
doc C: TextField(name=y, value="hello")
В этом случае, если мы сортируем по полю x
с числовым значением по умолчанию 10
, мы получаем A, C, B
, но если числовое значение по умолчанию 0
, мы получаем C, A, B
,