# 列名

SQLの構文ではさまざまな文脈で、列の名前を表名や相関名により限定することができます。

一方で文脈によっては列名を表名や相関名で限定できず、単純列名を使わなければならない場合もあります。 そのような文脈とは、

- 表の作成(CREATE TABLE 文)
- カーソルの更新可能な列の特定
- SELECT式にある列の相関名(選択式を参照)
- TableExpressionにある列の相関名 (TableExpressionを参照)

更新可能な列には相関名を使うことができません。仮に使えば、SQL例外が起きます。たとえば、

    SELECT c11 AS col1, c12 AS col2, c13 FROM t1 FOR UPDATE of c11,c13

という例にて、相関名を`c11のcol1`に使えません。なぜなら、 `c11`はFOR UPDATE に存在するからです。一方で相関名を`c12`に使うことができます。なぜなら、これはFOR UPDATEに存在しないからです。

#### 構文

    [ { table-Name | correlation-Name } . ] SQL92Identifier

#### 例

    -- C.Country は
    相関名により限定された
    --列名です。
    SELECT C.Country
    FROM APP.Countries C

Parent topic: SQLの識別子