37.18 GET_T_NUMBERファンクション
このファンクションは、配列の数値属性を返します。
構文
APEX_JSON.GET_T_NUMBER (
p_path IN VARCHAR2,
p0 IN VARCHAR2 DEFAULT NULL,
p1 IN VARCHAR2 DEFAULT NULL,
p2 IN VARCHAR2 DEFAULT NULL,
p3 IN VARCHAR2 DEFAULT NULL,
p4 IN VARCHAR2 DEFAULT NULL,
p_values IN t_values DEFAULT g_values )
RETURN apex_t_number;
パラメータ
パラメータ | 説明 |
---|---|
p_path |
p_values への索引。
|
p[0-4] |
p_path の%N はそれぞれpN に置換され、i-th% または%d はそれぞれp[i-1] に置換されます。
|
p_values |
解析されたJSONメンバー。デフォルトはp_values です。
|
戻り値
配列メンバー値(参照先のt_value
が配列の場合)。参照先の値のみが含まれる配列(その型を数値に変換できる場合)。
戻り値 | 説明 |
---|---|
VALUE_ERROR |
変換時のエラー。 |
例
この例では、JSON文字列を解析し、位置1にある値を出力します。
declare
j apex_json.t_values;
l_elements apex_t_number;
begin
apex_json.parse(j, '{ "foo": [111, 222], "bar": 333 }');
l_elements := apex_json.get_t_number (
p_values => j,
p_path => 'foo' );
for i in 1 .. l_elements.count loop
sys.dbms_output.put_line(i||':'||l_elements(i));
end loop;
l_elements := apex_json.get_t_number (
p_values => j,
p_path => 'bar' );
for i in 1 .. l_elements.count loop
sys.dbms_output.put_line(i||':'||l_elements(i));
end loop;
end;
Output:
1:111
2:222
1:333
親トピック: APEX_JSON