翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
配列からそのインデックスの要素を削除し、返します。空の配列をポップすると null が返されます。
構文
JSON.ARRPOP <key> [path [index]]
キー (必須) - JSON ドキュメントタイプのキー
パス「オプショナル」– 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\"]]"