翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
JSON.ARRTRIM
部分配列 start, end となるようにパスの配列をトリムします (どちらもこの値を含みます)。
配列が空の場合は、何もしないで 0 を返します。
start < 0 の場合は、0 として扱います。
end >= サイズ (配列のサイズ) の場合は、サイズ-1 として扱います。
start >= サイズまたは start > end の場合は、配列を空にして 0 を返します。
構文
JSON.ARRINSERT <key> <path> <start> <end>
key (必須) – JSONドキュメントタイプのキー
path (必須) – JSONパス
開始 (必須) — 開始インデックス (この値を含みます)。
終了 (必須) — 終了インデックス (この値を含みます)。
戻る
パスが拡張構文の場合:
各パスの配列の新しい長さを表す整数の配列。
-
値が空の配列の場合、対応する戻り値は null です。
-
値が配列でない場合、対応する戻り値は null です。
-
index 引数が範囲外である場合は、
OUTOFBOUNDARIES
エラーになります。
パスが制限構文の場合:
整数、配列の新しい長さ。
配列が空の場合は null になります。
-
パスの値が配列でない場合は、
WRONGTYPE
エラーになります。 -
index 引数が範囲外である場合は、
OUTOFBOUNDARIES
エラーになります。
例
拡張パス構文:
127.0.0.1:6379> JSON.SET k1 . '[[], ["a"], ["a", "b"], ["a", "b", "c"]]' OK 127.0.0.1:6379> JSON.ARRTRIM k1 $[*] 0 1 1) (integer) 0 2) (integer) 1 3) (integer) 2 4) (integer) 2 127.0.0.1:6379> JSON.GET k1 "[[],[\"a\"],[\"a\",\"b\"],[\"a\",\"b\"]]"
制限パス構文:
127.0.0.1:6379> JSON.SET k1 . '{"children": ["John", "Jack", "Tom", "Bob", "Mike"]}' OK 127.0.0.1:6379> JSON.ARRTRIM k1 .children 0 1 (integer) 2 127.0.0.1:6379> JSON.GET k1 .children "[\"John\",\"Jack\"]"