トップページ >  Oracle SQL >  別名をつける
初版2006/04/11: 最終更新日2006/08/05
  別名をつける
目次
別名をつける
別名をつける
SQLのフィールド名には別名をつけることができます。以下のSQL文を見てください。

select decode(torihiki_kbn,'1','日本','2','アメリカ')
from   nonyu_tbl;

このSQL文のフィールド名は decode(torihiki_kbn,'1','日本','2','アメリカ') となります。
これではこのフィールドが何を意味しているのかわかりにくいので、こういう場合、別名を使います。
別名の指定方法は下記SQLのように2通りあります。

select decode(torihiki_kbn,'1','日本','2','アメリカ') torihiki_kbn,
       decode(torihiki_kbn,'1','日本','2','アメリカ') as torihiki_kbn
from   nonyu_tbl;

まず1つ目は、フィールド名の後に半角スペースをいれて別名を指定するやり方です。
2つ目は、フィールド名の後に as キーワードを指定して別名を指定するやり方です。
Oracleではどちらも同じ意味になります。

次に、Oracleではテーブル名にも別名を指定することが出来ます。表の名前が長い場合や一つのSQL文に表を2つ以上使用する場合などに別名をつけたりします。
表別名の指定は下記SQLのようにFROM句で指定します。

select *
from   nonyu_tbl a,tanka_tbl b;

このSQL文で、もしnonyu_tblにもtanka_tblにもtankaというフィールドがあったら、select句でtankaと指定してもどちらのテーブルのtankaのことかわかりません。
このような時に a.tanka とすればnonyu_tblのtankaだと区別することができます。
テーブルの別名は、列の別名の指定の方法と違い、半角スペースを入れるだけです。asキーワードは使用できません。
別名を使用しないでtankaを区別するには下のSQL文のようにテーブル名にドット(.)を付けてフィールド名を指定しなくてはいけません。

select nonyu_tbl.tanka,
       tanka_tbl.tanka
from   nonyu_tbl,tanka_tbl;