- SQL ' として' テーブルの列またはテーブルに一時的に新しい名前を割り当てるために使用されます。
- これにより、クエリ結果が簡単に表示され、開発者はテーブルの列やテーブル自体の名前を永続的に変更することなく、結果をより正確にラベル付けできるようになります。
- select の構文を次のように見てみましょう。
SELECT Column_Name1 AS New_Column_Name, Column_Name2 As New_Column_Name FROM Table_Name;
ここで、Column_Name は元のテーブル内の列の名前であり、New_Column_Name は、その特定のクエリに対してのみ特定の列に割り当てられる名前です。これは、New_Column_Name がクエリに割り当てられる一時的な名前であることを意味します。
テーブルの列に一時的な名前を割り当てる:
order という名前のテーブルを考えてみましょう。このテーブルには次のデータが含まれています。
注文日 | お客様 | 製品 | 量 |
---|---|---|---|
2001 年 9 月 11 日 | アジート | 携帯 | 2 |
2001 年 12 月 13 日 | マヤンク | ラップトップ | 二十 |
2004 年 12 月 26 日 | バラスワミ | 放水銃 | 35 |
例:
「day_of_order」列と「customer」列の名前を、それぞれ「Date」と「Client」に変更するとします。
クエリ:
SELECT day_of_order AS 'Date', Customer As 'Client', Product, Quantity FROM orders;
結果は次の表のように表示されます。
注文日 | お客様 | 製品 | 量 |
---|---|---|---|
2001 年 9 月 11 日 | アジート | 携帯 | 2 |
2001 年 12 月 13 日 | マヤンク | ラップトップ | 二十 |
2004 年 12 月 26 日 | バラスワミ | 放水銃 | 35 |
上記の結果から、一時的に「Day_of_order」の名前が「date」に変更され、「customer」の名前が「client」に変更されていることがわかります。
注: SQL AS は SQL ALIAS と同じです。
別の例を見てみましょう。次のデータを含むstudentsテーブルがあるとします。
Student_RollNo | 学生の名前 | 学生_性別 | Student_MobileNumber | 学生_故郷 | 学生_年齢 | Student_Percentage |
---|---|---|---|---|---|---|
1 | ロヒット・モア | 男 | 9890786123 | ラクナウ | 23 | 75 |
2 | クナル・シャー | 男 | 7789056784 | チャンディーガル | 二十 | 92 |
3 | カルティック・ゴエンカ | 男 | 9908743576 | アーメダバード | 22 | 89 |
4 | アヌパマ・シャー | 女性 | 8890907656 | チェンナイ | 24 | 92 |
5 | スネーハル・ジェイン | 女性 | 8657983476 | 手紙 | 21 | 94 |
例 1:
一時的な列名「Student」および「Student_Percentage」の下に、それぞれ学生名と学生の割合の平均を取得するクエリを作成します。
クエリ:
SELECT Student_Name AS Student, AVG (Student_Percentage) AS Average_Percentage FROM students;
ここで、平均を計算するために使用したのは、 AVG()関数 。さらに、計算されたパーセンテージの平均値は、「Average_Percentage」という仮の名前で保存されます。
結果は次の表のように表示されます。
学生 | 平均_パーセンテージ |
---|---|
ロヒット・モア | 88.4000 |
例 2:
一時的な列名「Roll No」と「Mobile Number」の下に、学生名簿番号と学生の携帯電話番号をそれぞれ取得するクエリを作成します。
クエリ:
mysql> SELECT Student_RollNo AS 'Roll No', Student_PhoneNumber AS 'Mobile Number' FROM students;
結果は次の表のように表示されます。
ロール番号 | 携帯電話番号 |
---|---|
1 | 9890786123 |
2 | 7789056784 |
3 | 9908743576 |
4 | 8890907656 |
5 | 8657983476 |
例 3:
一時的な列名「Roll No」と「Student_Info」の下に、学生名簿番号と学生の電話番号、出身地をそれぞれ取得するクエリを作成します。
クエリ:
mysql> SELECT Student_RollNo AS 'Roll No', CONCAT (Student_PhoneNumber, ', ', Student_HomeTown) AS Student_Info FROM students;
ここで、 CONCAT()関数 学生の電話番号と出身地という 2 つの異なる列を 1 つの列に結合します。さらに、これらの両方の列を組み合わせた値は、一時的に割り当てられた名前「Student_Info」の下に保存されます。
結果は次の表のように表示されます。
ロール番号 | 携帯電話番号 |
---|---|
1 | 9890786123、ラクナウ |
2 | 7789056784、チャンディーガル |
3 | 9908743576、アーメダバード |
4 | 8890907656、チェンナイ |
5 | 8657983476、スーラト |
テーブルに一時的な名前を割り当てる
テーブル名を覚える代わりに、テーブルのエイリアスを作成できます。テーブルの列に一時的な名前を割り当てることができます。同様に、テーブルのエイリアスを作成できます。
例を使って理解してみましょう。
Java バージョン Linux
「students」という名前のテーブルのエイリアスを作成するクエリを作成します。
クエリ:
mysql> SELECT s.Student_RollNo, s.Student_Name, s.Student_Gender, s.Student_PhoneNumber, s.Student_HomeTown FROM students AS s WHERE s.Student_RollNo = 3;
ここで、「s」はエイリアス、つまり「students」テーブルに割り当てられた一時的な名前です。
結果は次の表のように表示されます。
Student_RollNo | 学生の名前 | 学生_性別 | Student_MobileNumber | 学生_故郷 |
---|---|---|---|---|
3 | カルティック・ゴエンカ | 男 | 9908743576 | アーメダバード |