プライマリ・コンテンツに移動

Oracle® Application Express APIリファレンス リリース5.1 E85937-02 |
| 目次 | 索引

前 | 次 |

# 15.17 GET_VARCHAR2ファンクション

このファンクションは、varchar2メンバー値を戻します。このファンクションは、ブール値および数値をvarchar2値に変換します。

構文

    APEX_JSON.GET_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_default          IN BOOLEAN  DEFAULT NULL,
        p_values           IN t_values DEFAULT g_values )
    RETURN VARCHAR2;

パラメータ

表15-17 GET_VARCHAR2ファンクションのパラメータ

パラメータ | 説明
--- | ---
`p_path` | `p_values`への索引。
`p[0-4]` | `p_path`の各%Nを`pN`で置き換え、i-th %sまたは%dをすべて`p[i-1]`で置き換えます。
`p_default` | メンバーが存在しない場合のデフォルト値。
`p_values` | 解析されたJSONメンバー。デフォルトは、`g_values`です。

戻り値/発生するエラー

表15-18 GET_VARCHAR2ファンクションの戻り値および発生するエラー

戻り値 | 説明
--- | ---
`VARCHAR2` | これは指定されたパスの位置にある値です。
`VALUE_ERROR` | `p_values(p_path)`が配列またはオブジェクトではない場合、このエラーが発生します。

例

この例では、JSON文字列を解析し、位置にある値を出力します。

    DECLARE
        j apex_json.t_values;
    BEGIN
        apex_json.parse(j, '{ "items": [ 1, 2, { "foo": 42 } ] }');
        dbms_output.put_line(apex_json.get_varchar2(p_path=>'items[%d].foo',p0=> 3,p_values=>j));
    END;