Spec-Zone.ru › Redis

JSON.ARRAPPEND

JSON.ARRAPPEND
Синтаксис
JSON.ARRAPPEND key [path] value [value ...]
Доступно в:
Redis Stack / JSON 1.0.0
Сложность по времени:
O(1) при вычислении пути до одного значения, O(N) при вычислении пути до нескольких значений, где N — размер ключа

Добавить json значения в массив по пути path после последнего элемента

Примеры

Обязательные аргументы

key

— ключ для изменения.

value

— одно или несколько значений для добавления в один или несколько массивов.

Использование строк с командами JSON

Чтобы указать строку как значение массива для добавления, оберните строку в двойные кавычки в дополнение к имеющимся. Пример: '"silver"'. Более подробное использование см. в примерах.

Необязательные аргументы

path

— JSONPath для указания. По умолчанию используется корень $.

Возвращаемое значение

Команда JSON.ARRAPEND возвращает массив целочисленных ответов для каждого пути, новый размер массива или nil, если соответствующее JSON-значение не является массивом. Более подробную информацию об ответах см. в спецификации протокола сериализации Redis.

Примеры

Добавление нового цвета в список цветов продукта

Создайте документ для беспроводных наушников с черным и серебряным цветами.

127.0.0.1:6379> JSON.SET item:1 $ '{"name":"Noise-cancelling Bluetooth headphones","description":"Wireless Bluetooth headphones with noise-cancelling technology","connection":{"wireless":true,"type":"Bluetooth"},"price":99.98,"stock":25,"colors":["black","silver"]}'
OK

Добавьте цвет blue в конец массива colors. JSON.ARRAPEND возвращает новый размер массива.

127.0.0.1:6379> JSON.ARRAPPEND item:1 $.colors '"blue"'
1) (integer) 3

Возвращает новую длину массива colors.

127.0.0.1:6379> JSON.GET item:1
"{\"name\":\"Noise-cancelling Bluetooth headphones\",\"description\":\"Wireless Bluetooth headphones with noise-cancelling technology\",\"connection\":{\"wireless\":true,\"type\":\"Bluetooth\"},\"price\":99.98,\"stock\":25,\"colors\":[\"black\",\"silver\",\"blue\"]}"

См. также

JSON.ARRINDEX | JSON.ARRINSERT

Связанные темы

  • RedisJSON
  • Индексация и поиск JSON-документов

© 2006–2022 Salvatore Sanfilippo
Licensed under the Creative Commons Attribution-ShareAlike License 4.0.
https://redis.io/commands/json.arrappend/

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API