リリース情報


38.2 第 3 章 言語エレメント

38.2.1 命名規則および暗黙的オブジェクト名の修飾

第 3 章のこのセクションに、以下の注釈を追加してください。

   SQL プロシージャーのコンテキスト内で使用される場合、以下の名前には
   通常 ID で許可されている文字しか使用できません(別のコンテキストで使用される
   場合はこの限りではありません)。
   - condition-name
   - label
   - parameter-name
   - procedure-name
   - SQL-variable-name
   - statement-name

38.2.2 DATALINK 割り当て

この節の段落が以下のように変更されました。

   URL パラメーターまたは関数結果のサイズは入力と出力のどちらでも
   同じで、DATALINK 列の長さでバインドされることに注意してください。
   ただし、返された URL 値にアクセス・トークンが接続されている場合が
   あります。このような事象が起こりうる状況では、出力ロケーションにはアクセス・
   トークンおよび DATALINK 列の長さに対する十分なストレージ・スペースが
   なければなりません。そのため、完全拡張フォームで入力されるコメントと
   URL を合わせた実際の長さは、出力ストレージ・スペースに適合するよう
   制限しなければなりません。制限された長さを超えていると、このエラーが
   出されます。

38.2.3 式

38.2.3.1 構文図

構文図が変更されました。

   .-演算子--------------------------------.
   V                                       |
>>----+-----+---+-function--------------+--+-------------------><
      +- + -+   +-(式)------------------+
      '- - -'   +-constant--------------+
                +-column-name-----------+
                +-host-variable---------+
                +-special-register------+
                +-(scalar-fullselect)---+
                +-labeled-duration------+
                +-case-expression-------+
                +-cast-specification----+
                +-dereference-operation-+
                +-OLAP-function---------+
                +-method-invocation-----+
                +-subtype-treatment-----+
                '-sequence-reference----'
 
operator
 
             (1)
|---+-CONCAT------+---------------------------------------------|
    +- / ---------+
    +- * ---------+
    +- + ---------+
    '- - ---------'
 

注:

  1. CONCAT の同義語として || を使用することができます。

38.2.3.2 OLAP 機能

以下は、第 3 章「式」の「OLAP 関数」セクションへの訂正事項です。

 
aggregation-function
 
|--column-function--OVER---(--+------------------------------+-->
                              '-| window-partition-clause |--'
 
>----+--------------------------------------------------------------------+>
     '-| window-order-clause |--+--------------------------------------+--'
                                '-| window-aggregation-group-clause |--'
 
>---------------------------------------------------------------|
 
window-order-clause
 
              .-,-----------------------------------------------.
              V                       .-| asc オプション |---.  |
|---ORDER BY-----sort-key-expression--+----------------------+--+->
                                      '-| desc オプション |--'
 
>---------------------------------------------------------------|
 
asc オプション
 
         .-NULLS LAST--.
|---ASC--+-------------+----------------------------------------|
         '-NULLS FIRST-'
 
desc オプション
 
          .-NULLS FIRST--.
|---DESC--+--------------+--------------------------------------|
          '-NULLS LAST---'
 
window-aggregation-group-clause
 
|---+-ROWS--+---+-| group-start |---+---------------------------|
    '-RANGE-'   +-| group-between |-+
                '-| group-end |-----'
 
group-end
 
|---+-UNBOUNDED FOLLOWING-----------+---------------------------|
    '-unsigned-constant--FOLLOWING--'
 

window-order-clause 記述で:

NULLS FIRST
ウィンドウ配列において、ソート順序は、すべての非 NULL 値の前に NULL 値が置かれます。

NULLS LAST
ウィンドウ配列において、ソート順序は、すべての非 NULL 値の後に NULL 値が置かれます。

window-aggregation-group-clause 記述で:

window-aggregation-group-clause
行 R の集約グループは、R の区分の行の順序付け内の R に関連して定義されている 行のセットです。その文節は集約グループを指定します。 この文節が指定されていない場合、デフォルトは、累積集約結果を提供する RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW と同じになります。

ROWS
集約グループがカウント行によって定義されることを示します。

RANGE
集約グループがソート・キーからのオフセットによって定義されることを示します。

group-start
集約グループの開始点を指定します。集約グループの終了は current row です。 group-start 文節の仕様は、"BETWEEN group-start AND CURRENT ROW" 形式の group-between 文節と同じです。

group-between
ROWS または RANGE に基づいて、集約グループの開始および終了を指定します。

group-end
集約グループの終了点を指定します。集約グループの開始は current row です。 group-end 文節の仕様は、"BETWEEN CURRENT ROW AND group-end" 形式の group-between 文節と同じです。

UNBOUNDED PRECEDING
current row の前の区分全体を組み込みます。 これは、ROWS または RANGE のいずれかと一緒に指定できます。 window-order-clause 内の複数の sort-key-expressions と一緒に指定することもできます。

UNBOUNDED FOLLOWING
current row に続く区分全体を組み込みます。 これは、ROWS または RANGE のいずれかと一緒に指定できます。 window-order-clause 内の複数の sort-key-expressions と一緒に指定することもできます。

CURRENT ROW
current row に基づいて、集約グループの開始および終了を指定します。 ROWS が指定された場合、current row が集約グループ境界です。 RANGE が指定された場合、集約グループ境界には、sort-key-expressions に current row と同じ値を持つ行のセットが含まれます。group-bound1value FOLLOWING が指定されている場合、この文節を group-bound2 で 指定することはできません。

value PRECEDING
current row の前の行の範囲または行数のいずれかを指定します。 ROWS が指定された場合、value は行数を示す正の整数です。 RANGE が指定された場合、value のデータ・タイプは、 window-order-clause の sort-key-expression のタイプと互換性がなければなりません。 sort-key-expression は 1 つのみで、sort-key-expression のデータ・タイプは 減算を許可しなければなりません。group-bound1 が CURRENT ROW または value FOLLOWING の場合、この文節を group-bound2 で指定することはできません。

value FOLLOWING
current row の後の行の範囲または行数のいずれかを指定します。 ROWS が指定された場合、value は行数を示す正の整数です。 RANGE が指定された場合、value のデータ・タイプは、 window-order-clause の sort-key-expression のタイプと互換性がなければなりません。 sort-key-expression は 1 つのみで、sort-key-expression のデータ・タイプは 加算を許可しなければなりません。

38.2.3.3 シーケンス参照

以下の情報を「式」セクションの終わり (「サブタイプの取り扱い」の後) に追加します。

 
sequence-reference
 
|--+-| nextval-expression |-+-----------------------------------|
   '-| prevval-expression |-'
 
nextval-expression
 
|---NEXTVAL FOR--sequence-name----------------------------------|
 
prevval-expression
 
|---PREVVAL FOR--sequence-name----------------------------------|
 

NEXTVAL FOR sequence-name
NEXTVAL 式は、sequence-name で指定されたシーケンスの次の値を返します。

PREVVAL FOR sequence-name

PREVVAL 式は、現行セッションで前のステートメントの指定された シーケンスについて生成された最新の値を返します。 この値は、シーケンスの名前が指定されている PREVVAL 式を使用して、繰り返し参照することができます。 単一ステートメント内に同じシーケンスを指定している PREVVAL 式のインスタンスが 複数存在する可能性があり、それらはすべて同じ値を返します。

同じシーケンス名が指定されている NEXTVAL 式がすでに 現行ユーザー・セッションで (現在または前のトランザクションで) 参照されている場合のみ、 PREVVAL 式を使用できます (SQLSTATE 51035)。

注:

例:

これらの例では、表 "order" があり、以下のようにシーケンス "order_seq" が作成されることが 前提となっています。

CREATE SEQUENCE order_seq
   START WITH 1
   INCREMENT BY 1
   NOMAXVALUE
   NOCYCLE
   CACHE 24


[ ページのトップ | 前ページ | 次ページ | 目次 | 索引 ]