26.19 GET_T_VARCHAR2ファンクション
このファンクションは、配列のvarchar2属性を返します。
構文
FUNCTION GET_T_VARCHAR2 (
    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_varchar2;パラメータ
表26-23 GET_T_VARCHAR2ファンクションのパラメータ
| パラメータ | 説明 | 
|---|---|
| 
 | 
 | 
| 
 | 
 | 
| 
 | 解析されたJSONメンバー。デフォルトは、 | 
戻り値
配列メンバー値(参照先のt_valueが配列の場合)。参照先の値のみが含まれる配列(その型をvarchar2に変換できる場合)。
                  
Raises
表26-24 GET_T_VARCHAR2ファンクションで発生するエラー
| 戻り値 | 説明 | 
|---|---|
| 
 | 変換時のエラー。 | 
例
この例では、JSONを解析し、位置1にある値を出力します。
declare
    j          apex_json.t_values;
    l_elements apex_t_varchar2;
begin
    apex_json.parse(j, '{ "foo": ["one", "two"], "bar": "three" }');
    l_elements := apex_json.get_t_varchar2 (
                      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_varchar2 (
                      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:one
  2:two
  1:three親トピック: APEX_JSON