SQLiteでは、json_array() 関数は、引数に基づいて整形式のJSON配列を返します。
関数は0個以上の引数を受け入れ、各引数は結果の配列の要素になります。
構文
json_array(value1,value2,...)
ここで、value1, value2, ... 結果の配列の配列要素を表します。
例
簡単な例を次に示します。
SELECT json_array( 9, 7, 12, 11 ); 結果:
[9,7,12,11]
数値に引用符を追加すると、その配列要素は引用符で囲まれたJSON文字列になります:
SELECT json_array( 9, '7', 12, 11 ); 結果:
[9,"7",12,11]
JSONオブジェクトの受け渡し
SQL型TEXTで引数を渡すと、引用符で囲まれたJSON文字列が生成され、引用符で囲まれたラベルはエスケープされます:
SELECT json_array( '{ "a" : 1 }' ); 結果:
["{ \"a\" : 1 }"]
これを望まない場合は、json()を使用できます 値を有効なJSONドキュメントとして提供する関数:
SELECT json_array( json('{ "a" : 1 }') ); 結果:
[{"a":1}]
これを行う別の方法は、SQLiteの->を使用することです。 演算子:
SELECT json_array( '{ "a" : 1 }' -> '$' ); 結果:
[{"a":1}]
または、json_object()を使用することもできます 機能:
SELECT json_array( json_object( 'a', 1 ) ); 結果:
[{"a":1}] ここに他のいくつかの配列要素があります:
SELECT json_array( "Cat", json_object( 'a', 1 ), "Dog" ); 結果:
["Cat",{"a":1},"Dog"] JSON配列の受け渡し
JSON配列を渡す場合も同様です:
SELECT json_array( '[ 9, 4, 7 ]' ); 結果:
["[ 9, 4, 7 ]"]
この場合、別の配列に似た文字列を含むJSON配列を取得します。
実際のJSON配列を返すには、引数をjson()に渡すことができます。 機能:
SELECT json_array( json('[ 9, 4, 7 ]') ); 結果:
[[9,4,7]]
->も使用できます 演算子:
SELECT json_array( '[ 9, 4, 7 ]' -> '$' ); 結果:
[[9,4,7]]
または、値を別のjson_array()に渡すこともできます :
SELECT json_array( json_array( 9, 4, 7 ) ); 結果:
[[9,4,7]]
ここに他のいくつかの配列要素があります:
SELECT json_array( "Cat", json_array( 9, 4, 7 ), "Dog" ); 結果:
["Cat",[9,4,7],"Dog"]
空のアレイを作成する
json_array()を呼び出す 引数を渡さないと、空の配列になります:
SELECT json_array(); 結果:
[]