エイリアス(エイリアス)を使ったテーブル結合
テーブルのエイリアスをつけておくと、SELECT文などクエリの他の部分でも、そのエイリアスを使用できるため、とても便利です。
フィールドを SELECTする際、どのテーブルのフィールドかが曖昧になる場合があります。たとえば、applesとorangesという2つのテーブルがあり、どちらもcolorという列があるとします。この場合、SELECT文内でapples.colorまたはoranges.colorのように書き、SQLが正しいテーブルを参照できるようにする必要があります。これをしないと、次のようなエラーが発生します。
column reference "color" is ambiguous
ここでは、countriesテーブルと economiesテーブルのデータを使って、エイリアスを用いたテーブルの結合を練習しながら、2010年と2015年のインフレ率を確認してみましょう。
ちなみに結合を書く際、ユーザーは、SELECT文内でテーブルのエイリアスを使う必要がある場合に備えて、結合コードを書いたあとに SELECT文を書くことが多いです。
この演習はコースの一部です
SQLのデータ結合
演習の手順
- まず行5に
countries AS c(左テーブル)とeconomies(右テーブル) を結合し、economies AS eとエイリアスをつけてください。 - 次に行7で結合フィールドとして
codeを使用します。ここで、USINGコマンドを使用しないようご注意ください。 - 最後に、行2で次の列をこの順番通り選択します:
countriesテーブル(エイリアス:country_code)のcode、name、year、inflation_rate。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
-- Select fields with aliases
___
FROM countries AS c
-- Join to economies (alias e)
___
-- Match on code field using table aliases
___