

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# JSON.STRAPPEND
<a name="json-strappend"></a>

パスの JSON 文字列に文字列を追加します。

構文

```
JSON.STRAPPEND <key> [path] <json_string>
```
+ キー (必須) - JSON ドキュメントタイプのキー
+ パス「オプショナル」– JSON パス。指定しない場合、デフォルトでルートになります
+ json\$1string (必須) — 文字列の JSON 表現。JSON 文字列は引用符で囲む ("foo") 必要があることに注意してください。

**戻る**

パスが拡張構文の場合:
+ 各パスの文字列の新しい長さを表す整数の配列。
+ パスの値が文字列でない場合、対応する戻り値は null です。
+ 入力された json 引数が有効な JSON 文字列でない場合は、`SYNTAXERR ` エラーになります。
+ パスが存在しない場合は、`NONEXISTENT ` エラーになります。

パスが制限構文の場合:
+ 整数、文字列の新しい長さ。
+ 複数の文字列値が選択されている場合、このコマンドは最後に更新された文字列の新しい長さを返します。
+ パスの値が文字列でない場合は、`WRONGTYPE` エラーになります。
+ 入力された json 引数が有効な JSON 文字列でない場合は、`WRONGTYPE` エラーになります。
+ パスが存在しない場合は、`NONEXISTENT` エラーになります。

**例**

 拡張パス構文:

```
127.0.0.1:6379> JSON.SET k1 $ '{"a":{"a":"a"}, "b":{"a":"a", "b":1}, "c":{"a":"a", "b":"bb"}, "d":{"a":1, "b":"b", "c":3}}'
OK
127.0.0.1:6379> JSON.STRAPPEND k1 $.a.a '"a"'
1) (integer) 2
127.0.0.1:6379> JSON.STRAPPEND k1 $.a.* '"a"'
1) (integer) 3
127.0.0.1:6379> JSON.STRAPPEND k1 $.b.* '"a"'
1) (integer) 2
2) (nil)
127.0.0.1:6379> JSON.STRAPPEND k1 $.c.* '"a"'
1) (integer) 2
2) (integer) 3
127.0.0.1:6379> JSON.STRAPPEND k1 $.c.b '"a"'
1) (integer) 4
127.0.0.1:6379> JSON.STRAPPEND k1 $.d.* '"a"'
1) (nil)
2) (integer) 2
3) (nil)
```

 制限パス構文:

```
127.0.0.1:6379> JSON.SET k1 . '{"a":{"a":"a"}, "b":{"a":"a", "b":1}, "c":{"a":"a", "b":"bb"}, "d":{"a":1, "b":"b", "c":3}}'
OK
127.0.0.1:6379> JSON.STRAPPEND k1 .a.a '"a"'
(integer) 2
127.0.0.1:6379> JSON.STRAPPEND k1 .a.* '"a"'
(integer) 3
127.0.0.1:6379> JSON.STRAPPEND k1 .b.* '"a"'
(integer) 2
127.0.0.1:6379> JSON.STRAPPEND k1 .c.* '"a"'
(integer) 3
127.0.0.1:6379> JSON.STRAPPEND k1 .c.b '"a"'
(integer) 4
127.0.0.1:6379> JSON.STRAPPEND k1 .d.* '"a"'
(integer) 2
```