翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
JSON.ARRPOP
配列からそのインデックスの要素を削除し、返します。空の配列をポップすると null が返されます。
構文
JSON.ARRPOP <key> [path [index]]
-
key (必須) – JSONドキュメントタイプの Valkey または Redis OSSキー。
-
path (オプション) – JSONパス。指定しない場合、デフォルトでルートになります。
-
index (オプション) — ポップを開始する配列内の位置。
-
指定しない場合、デフォルトで -1 になります。これは最後の要素を意味します。
-
負の値は、最後の要素からの位置を意味します。
-
境界外インデックスは、それぞれの配列境界に丸められます。
-
戻る
パスが拡張構文の場合:
-
各パスのポップされた値を表す一括文字列の配列。
-
値が空の配列の場合、対応する戻り値は null です。
-
値が配列でない場合、対応する戻り値は null です。
パスが制限構文の場合:
-
ポップされたJSON値を表す一括文字列。
-
配列が空の場合は null になります。
-
パスの値が配列でない場合は、
WRONGTYPE
エラーになります。
例
拡張パス構文:
127.0.0.1:6379> JSON.SET k1 . '[[], ["a"], ["a", "b"]]' OK 127.0.0.1:6379> JSON.ARRPOP k1 $[*] 1) (nil) 2) "\"a\"" 3) "\"b\"" 127.0.0.1:6379> JSON.GET k1 "[[],[],[\"a\"]]"
制限パス構文:
127.0.0.1:6379> JSON.SET k1 . '[[], ["a"], ["a", "b"]]' OK 127.0.0.1:6379> JSON.ARRPOP k1 "[\"a\",\"b\"]" 127.0.0.1:6379> JSON.GET k1 "[[],[\"a\"]]" 127.0.0.1:6379> JSON.SET k2 . '[[], ["a"], ["a", "b"]]' OK 127.0.0.1:6379> JSON.ARRPOP k2 . 0 "[]" 127.0.0.1:6379> JSON.GET k2 "[[\"a\"],[\"a\",\"b\"]]"