40.1 DIFFファンクション
このファンクションは、行の表の差分を計算します。実装では、デフォルト・バージョンの最長共通部分式アルゴリズムを、最適化なしで使用します。DIFFファンクションは、非常に大きな入力を対象としていません。出力は、統合されたdiff形式に似ています。
                  
構文
APEX_STRING_UTIL.FUNCTION DIFF (
    p_left    IN apex_t_varchar2,
    p_right   IN apex_t_varchar2,
    p_context IN PLS_INTEGER DEFAULT 3 )
    RETURN apex_t_varchar2;パラメータ
表40-1 DIFFファンクションのパラメータ
| パラメータ | 説明 | 
|---|---|
| p_left | 左側の表の行。 | 
| p_right | 右側の表の行。 | 
| p_context | 同様に返される、各差分の後の同じ行の数(デフォルトは3)。 | 
戻り値
varchar2の表。最初の文字は差分のタイプを示します。
- @- 左側と右側の行番号。
- "- -- 行は左側にありますが、右側にはありません。
- +- 行は右側にありますが、左側にはありません。
例
この例では、特定の表間の差分を計算します。
select apex_string_util.diff (
           p_left  => apex_t_varchar2('how','now','brown','cow'),
           p_right => apex_t_varchar2('what','now','brown','cow',1,2,3) )
  from sys.dual;
-> apex_t_varchar2 (
       '@@ 1,0 @@',
       '-how',
       '@@ 1,1 @@',
       '+what',
       ' now',
       ' brown',
       ' cow',
       '@@ 4,5 @@',
       '+1',
       '+2',
       '+3' )親トピック: APEX_STRING_UTIL