SQLエイリアス:完全ガイド
SQLエイリアスは、テーブルまたは列の参照名です。テーブル名が長い場合は、クエリを短縮するために使用されます。テーブルと列の両方のエイリアスは、ASキーワードを使用して定義されます。エイリアスは、クエリが実行されるまで続きます。エイリアスは永続的ではありません。
複雑なクエリで長い列名やテーブル名を書き出すのに飽きたことはありませんか?これは、SQLについて詳しく学ぶときに起こります。ここでエイリアスが役に立ちます。エイリアスはクエリを短縮するのに役立ちます。
このガイドでは、SQLエイリアスとは何か、およびそれらが使用される理由について説明します。 SQLエイリアスの使用方法を理解するのに役立つ、実際のエイリアスの2つのシナリオについて説明します。面倒なことはせずに始めましょう!
注:このチュートリアルはPostgreSQLを使用して作成されています。
SQLエイリアスとは何ですか?
SQLエイリアスは、人間と人間のエイリアスのようなものです。 SQLエイリアスは、プレースホルダー名をテーブルまたはテーブルの列に割り当てます。エイリアスは、クエリとその結果を読みやすく、解釈しやすくするのに役立つため、便利です。
良いエイリアスとは、できるだけ早く理解できるエイリアスです。
エイリアスn nameという列を説明するのは混乱します number_of_products。という列もあった場合 どちらもnの文字で始まります 。
fn フルネームの各単語の最初の文字を使用するため、より適切な場合があります 。このエイリアスは混乱を引き起こす可能性が低くなります。
参加者の81%は、ブートキャンプに参加した後、自分たちの技術的な仕事の見通しについてより自信を持っていると述べました。今日のブートキャンプにマッチしましょう。
平均的なブートキャンプの卒業生は、ブートキャンプの開始から最初の仕事を見つけるまで、キャリアの移行に6か月も費やしませんでした。
SQLクエリは、自分だけでなく他の誰かによって使用される可能性があることに注意してください。すべての読者がクエリをできるだけ直感的に行えるように、あらゆる努力を払う必要があります。
SQLエイリアス:列
列名にエイリアスを使用します。列名エイリアスを使用すると、クエリの出力で列の名前を変更できます。
サンプルデータベースの2つのテーブルを見てみましょう。これらのデータベースは従業員と呼ばれます およびブランチ 。
従業員 | | ブランチ | ||||
名前 | タイトル | branch_id | 給与 | | branch_id | branch_name |
ジェフ | シニアセールスアソシエイト | 1 | 38000 | | 1 | サンフランシスコ |
アダム | シニアセールスアソシエイト | 2 | 38000 | | 2 | ケンブリッジ |
エマ | マーケティングエグゼクティブ | 2 | 50000 | | 3 | ロサンゼルス |
ルーク | マーケティングアシスタント | 3 | 32000 | | | |
従業員テーブルには、4つの列と4つの行があります。ブランチテーブルには2つの列と3つの行があります。
各ブランチで稼いだ最高の給与を示すSQLSELECTステートメントを書いてみましょう:
SELECT branches.branch_name, MAX(employees.salary) FROM employees LEFT JOIN branches ON employees.branch_id = branches.branch_id GROUP BY branches.branch_name;
MAX()SQL集計関数を使用して、「従業員」テーブルの「給与」列で最大値を選択します。 SQLLEFT JOINステートメントを使用して、「ブランチ」テーブルと「従業員」テーブルを接続します。これにより、各ブランチのリターンを確認できます。
クエリが何を返すか見てみましょう:
branch_name | 最大 |
サンフランシスコ | 38000 |
ロサンゼルス | 32000 |
ケンブリッジ | 50000 |
クエリは機能します。クエリのタイトル名はあまり直感的ではありません。これを書かない人にとっては、「max」というクエリは混乱を招く可能性があります。
列のエイリアス名を指定することでこれを解決します:
SELECT branches.branch_name AS "Branch Name", MAX(employees.salary) as "Highest Salary" FROM employees LEFT JOIN branches ON employees.branch_id = branches.branch_id GROUP BY branches.branch_name;
2つのエイリアスを指定します。 「branch_name」はエイリアス「BranchName」を取得します。 MAX()集計関数は、エイリアス「HighestSalary」を取得します。クエリをもう一度実行してみましょう:
ブランチ名 | 最高の給与 |
サンフランシスコ | 38000 |
ロサンゼルス | 32000 |
ケンブリッジ | 50000 |
クエリによって返される行は同じです。表の見出しが変わります。現在、「branch_name」は「Branch Name」であり、「max」は「HighestSalary」です。
SQLエイリアス:テーブル
テーブルにSQLエイリアスを定義できます。これは、クエリでテーブルを何度も参照する場合に便利です。このようなイベントは、より複雑なクエリで発生することがよくあります。
複数のテーブルをクエリする場合は、列の名前の前に各テーブルの名前を指定する必要があります。テーブルと列の名前はピリオド(。)で区切られます。これにより、SQLは、各ステートメントがクエリで参照しているテーブルを正確に認識します。
この機能は、クエリをあいまいにすることから保護しますが、読みにくくします。したがって、エイリアスを理解するのがそれほど難しくないことを確認する必要があります。
すべての従業員の名前と、彼らが働いている支店の名前を返すクエリを書いてみましょう。
SELECT employees.name, branches.branch_name FROM employees LEFT JOIN branches ON employees.branch_id = branches.branch_id;
クエリは次を返します:
名前 | branch_name |
ジェフ | サンフランシスコ |
アダム | ケンブリッジ |
エマ | ケンブリッジ |
ルーク | ロサンゼルス |
従業員とブランチの2つのテーブルにクエリを実行します。 LEFT JOINを使用して、両方のテーブルの「branch_id」の値を接続します。これにより、従業員が関連付けられている各支店の名前を確認できます。
私たちのクエリはかなり長いです。 「従業員」と「支店」という言葉を2回繰り返します。より長いクエリでは、これらの単語をさらに使用する必要があります。
エイリアスを使用してクエリを短くします。 ASキーワードを使用して、SQLクエリのエイリアスとしてテーブル名を作成する必要があります。
SELECT e.name, b.branch_name FROM employees AS e LEFT JOIN branches AS b ON e.branch_id = b.branch_id;
このクエリは、最初のクエリと同じ出力を返します。
2つのエイリアスを割り当てます:
- 「従業員」は「日」です
- 「ブランチ」は「br」です
emを参照するときはいつでも またはbr クエリでは、SQLはそれをそれぞれ「従業員」と「支店」を参照しているように扱います。テーブルエイリアスを使用すると、SQLステートメントの繰り返しの量を減らすことができます。
結論
SQLエイリアスは、列またはテーブルの代替名です。エイリアスはクエリ固有です。つまり、あるクエリのエイリアスを別のクエリで使用するには、エイリアスを再定義する必要があります。エイリアスはASキーワードを使用して設定されます。
SQLについてもっと知りたいですか? SQLの学習方法ガイドをご覧ください。この包括的なガイドでは、検討すべきコースから役立つオンラインSQLリソースまですべてを網羅しています。
-
Fortniteシステム要件の完全ガイド
Fortniteは最近多くの人気を得ています。しかし最近、多くの人が「PCで実行できますか」という質問を投げかけました。 」および「このバトルロワイヤルゲームを実行するのに十分な互換性がある場合 」。通常、他の一般的なプログラムと比較して、ゲームにはRAM、プロセッサ、ビデオカード、 DirectXの要件が高くなります。 、など。 コンテンツ: Fortnite Minimal Specsとは何ですか? Fortniteの推奨PC要件は何ですか? MacでのFortniteシステム要件は何ですか? ボーナスのヒント:すべてのゲームドライバーとコンポーネントを更新し
-
完全ガイド:Fitbit Pay
Fitbit は、利用可能な最高のスマート ウェアラブルの 1 つです。多くのモデルがあり、多くの機能を備えています。 Fitbit の有名な機能の 1 つに Fitbit Pay があります。 Fitbit Ionic と Fitbit Versa の近距離無線通信チップを使用すると、非接触型決済を利用できるあらゆる店舗で支払うことができます。 この投稿では、Fitbit Pay の使用方法を理解するのに役立つ完全なガイドを掲載しています。 Fitbit Pay とは? Fitbit Pay は、Fitbit Ionic および Versa にデビット カードまたはクレジット カードを追