Диапазон составных ключей Couchbase lite с нулями - PullRequest
0 голосов
/ 23 мая 2018

У меня есть данные о погоде с помощью составных ключей в формате

[ "District", "2018", "05", "23", "06", "00", "00" ]

На сервере я могу запросить погоду на день, используя клавиши запуска и окончания

startkey=[ "District","2018","05","23",null,null,null]
endkey=[ "District","2018","05","23","\u0fff","\u0fff","\u0fff"]

Этодает мне всю погоду для района на 2018-05-23 .Теперь, после синхронизации документов с couchbase lite на Android, я пытаюсь повторить ключевые диапазоны.Я пытался

startkey=arrayListOf("District","2018","05","23",null,null,null)
endkey=arrayListOf("District","2018","05","23","\u0fff","\u0fff","\u0fff")

Но это возвращает пустой набор данных.Как я могу отформатировать мои ключи, чтобы повторить то, что я сделал на сервере.

1 Ответ

0 голосов
/ 25 мая 2018

Couchbase Server и Couchbase Lite имеет синтаксическую разность для запросов, поскольку он ясно показывает, как мы строим массив составных ключей на стороне сервера, ноль был разрешен, чтобы получить лексикографическийправильное значение для вывода и то же самое происходит с Unicode , предоставленным в endKey Предполагая, что ваш составной ключ

[ "District", "2018", "05", "23", "06", "00", "00" ]
[ "DistrictName","year","month","day","hour,"minute","second"]

На мобильном телефоне может быть два варианта (Couchbase Lite ) для запроса по таким составным ключам, которые не предоставляют значения для часа / мин / секунды или что-то еще, для представления значения для null и Unicode:

From:

startkey=arrayListOf("District","2018","05","23",null,null,null)
endkey=arrayListOf("District","2018","05","23","\u0fff","\u0fff","\u0fff")

Кому:

startkey=arrayListOf("District","2018","05","23","00","00","01")
endkey=arrayListOf("District","2018","05","23","23","59","59")
...