エラー: 複数の値を抽出するJSONExtractValueの使用
この例では、JSONExtractValueメソッドを使用して複数の単一スカラー値を抽出すると、警告とエラー メッセージ文字列が返されます。
SELECT NEW JSON('{"numbers":[1,2,3]}').JSONExtractValue('$.numbers.*');
結果:
*** Query completed. One row found. One column returned. *** Warning: 7548 More than one result per JSON instance found. *** Total elapsed time was 1 second. NEW JSON('{"numbers":[1,2,3]}', LATIN).JSONEXTRACTVALUE('$.numbers.*') --------------------------------------------------------------------------- *** ERROR MULTI RESULT ***
JSONExtractを使用した複数の値の取得
以下は、JSONExtractValueメソッドの代わりにJSONExtractメソッドを使用する点を除いて前の例と同じです。この場合、JSON配列の複数の値が返されます。
SELECT NEW JSON('{"numbers":[1,2,3]}').JSONExtract('$.numbers.*');
結果:
*** Query completed. One row found. One column returned. *** Total elapsed time was 1 second. NEW JSON('{"numbers":[1,2,3]}', LATIN).JSONEXTRACT('$.numbers.*') --------------------------------------------------------------------------- [1,2,3]