SQL SELECT ステートメント: 概要

SQL SELECT ステートメント: 概要

このチュートリアルでは、データベースやさまざまなテーブルからのデータの抽出について学びます。使用する SQL ステートメントはSQL SELECT ステートメントです。

SELECT ステートメントは、データベースからデータを取得するために使用されます。  

目次

SQL SELECT ステートメントの構文

テーブルからすべての列またはフィールドを選択するには、Select * FROM TableName という構文を使用する必要があります。アスタリスクは、特定のテーブルからすべてのデータを取得することを意味します。 

SQL SELECT ステートメント: 概要

LuckyTemplates またはその他のレポート ツールでは、必要なデータのみを取り込む必要があります。すべての列が必要ない場合は、必要な 2 列または 3 列だけを持ってきます。

すべてのデータを取得したくない場合は、列名を指定する必要があります ( Selectcol1,col2,col3 FROM TableName )。必要に応じて、1 つまたは複数の列を指定できます。

SQL SELECT ステートメント: 概要

たとえば、従業員テーブルでは、ID、名前、および住所列からのみデータを取得したいとします。したがって、これらの 3 つの列のみを指定しました。

SQL SELECT ステートメント: 概要

Alias キーワードを理解する

エイリアスは、列またはテーブルを読みやすく、理解しやすくするために一時的な名前を設定するために使用されます。Alias の使用は、それを使用している特定のクエリにのみ存在することに注意してください。さらに、データベース上の実際の列名やテーブル名は変更されません。 

Alias を使用するには、 ASキーワードを使用する必要があります。たとえば、Column1およびColumn2という名前の列がある場合、 ASを使用するか、構文Column1 AS Col1およびColumn2 AS Col2 を使用して、それらの一時名を Col1 および Col2設定できます。  

SQL SELECT ステートメント: 概要

これは、列名が長すぎて一般的すぎる、より複雑なデータベースで作業する場合に合理的です。 

テーブル名には、TableName AS tのような同じ構文を使用できます。

SQL SELECT ステートメント: 概要

テーブル名にエイリアスを使用するもう 1 つの理由は、同じ列を持つ複数のテーブルから列を選択する場合です。これについては、 JOIN句を使用するときにさらに詳しく学びます。

たとえば、従業員ID列を抽出したいが、クエリはEmployee テーブルProductテーブルなどの複数のテーブルを抽出しているとします。したがって、EmployeeID列を抽出するには、設定したEmployee テーブルALIASを使用できます。この例では「e」を使用しました。 

SQL SELECT ステートメント: 概要

代わりに完全なテーブル名を使用することもできます。ただし、Alias を使用すると、特に複雑なテーブル名を持つ複雑なデータベースを扱う場合に、コードが短くなります。  

SELECT TOP 句と ORDER BY キーワードについて

Select TOP句は、クエリで返す行数を制限または指定するために使用されます。したがって、 TOP 10TOP 20、またはTOP 100に指定することも、 SELECTクエリを制限することもできます。また、テーブル内のすべての行やデータを確認する必要がないように、特定のテーブルの構造だけを確認したい場合にもこれを使用します。 

たとえば、Employeeテーブルに 200 万行がある場合、TOP 100を使用すると、テーブル内の 200 万行ではなく 100 行のみが返されます。

SQL SELECT ステートメント: 概要

一方、ORDER BYキーワードは、クエリ結果の行の順序を並べ替えるために使用されます。必要に応じて、1 つまたは複数の列ごとに注文できます。デフォルトでは、並べ替え順序は昇順になります。 

SQL SELECT ステートメント: 概要

結果を降順に並べ替えたい場合は、DESCコマンドを使用するだけです。

SQL SELECT ステートメント: 概要

SSMS での SELECT ステートメントの使用 (SQL Server Management Studio)

このチュートリアルでは、SQL Server と SSMS をダウンロードしてインストールする方法を学習できます。

この例では、Microsoft のサンプル データベースであるAdventureWorks2012データベース に接続しています。

SQL SELECT ステートメント: 概要

まず、 「人物」テーブルからすべてのレコードを選択しましょう。したがって、 「 SELECT * FROM person.person 」と入力するだけです。

SQL SELECT ステートメント: 概要

このクエリ コマンドを実行するには、コマンドを強調表示して[実行]ボタンをクリックします。

SQL SELECT ステートメント: 概要

クエリ結果が下部に表示されます。この例では、 Personテーブルから 19,1972 行が抽出されたことがわかります。 

SQL SELECT ステートメント: 概要

この部分は単なるコメントまたはメモです。したがって、これを強調表示してクエリを実行しても、実行や結果には影響しません。 

SQL SELECT ステートメント: 概要

SQL SELECT ステートメントによる特定の列の選択

次は、テーブルからすべての列を選択するのではなく、特定の列を指定するためのものです。* をFirstNameLastName、およびEmailPromotionに置き換えましょう。繰り返しますが、これはPersonテーブルから特定の列を選択するためのものです。

SQL SELECT ステートメント: 概要

実行するには、それを強調表示して、もう一度「実行」ボタンをクリックするだけです。

SQL SELECT ステートメント: 概要

現在、結果には選択した 3 つの列が表示されています。

SQL SELECT ステートメント: 概要

エイリアスの使用

エイリアスについては、同じコマンドを使用し、ASキーワードを使用してFirstName 列LastName 列のエイリアスをFNameLNameに設定します。

SQL SELECT ステートメント: 概要

変更を実行すると、結果にはFirstName列がFNameとして表示され、LastName 列がLNameとして表示されるようになります。

SQL SELECT ステートメント: 概要

ORDER BY キーワードの使用

たとえば、結果をFirstName列の昇順で並べ替えたいとします。先ほどの結果からわかるように、デフォルトではまだ並べ替えられていません。

SQL SELECT ステートメント: 概要

そのためには、クエリ コマンドに 「 ORDER BY FirstName 」を追加しましょう。

SQL SELECT ステートメント: 概要

このクエリを実行してみましょう。結果が FirstName 列の昇順で並べ替えられていることがわかります。繰り返しますが、並べ替え順序を指定しない場合、デフォルトでは順序は昇順になります。

SQL SELECT ステートメント: 概要

したがって、ソート順序をASCまたは昇順に指定しても、結果は変わりません。

SQL SELECT ステートメント: 概要

それでは、 DESCまたは降順を試してみましょう。ASCをDESCに追加または変更するだけです。

SQL SELECT ステートメント: 概要

次に、結果を降順で並べ替えます。ご覧のとおり、結果はZで始まる名前で始まりました。

SQL SELECT ステートメント: 概要

Select TOP 句の使用

この例では、 SalesOrderHeaderテーブルからすべてのデータを抽出しましょう。

SQL SELECT ステートメント: 概要

クエリ コマンドを実行すると、31,465 行が得られることがわかります。これで大丈夫です。ただし、何百万行ものテーブルが存在する場合があります。その結果、実行が完了するまでに時間がかかり、問題が発生する可能性があります。 

SQL SELECT ステートメント: 概要

それらのインスタンスの結果を制限することが理想的です。ここで、Select TOP句も役立ちます。たとえば、TOP 100を追加して、このクエリ コマンドから返される行を 100 に制限してみましょう。

SQL SELECT ステートメント: 概要

コマンドを実行した後の結果は、100 行のみが返されるかフェッチされたことを示します。これにより、特定のテーブルの構造を簡単に確認できます。 

SQL SELECT ステートメント: 概要

たとえば、上位 100 位の結果を確認するだけでなく、このテーブルの最も古いレコードも確認したいとします。

そのためには、 OrderDate列で並べ替えるだけです。したがって、 ORDER BY OrderDateを追加するだけです。

SQL SELECT ステートメント: 概要

結果として、最も古い日付は2011-05-31であることがわかります。 

SQL SELECT ステートメント: 概要

最新のレコードを確認するには、 DESCを使用するだけです。

SQL SELECT ステートメント: 概要

その結果、最新のレコードは2014-06-30であることがわかります。

SQL SELECT ステートメント: 概要

SQL Server のダウンロードとインストール
LuckyTemplates ユーザーのための SQL – 新しい LuckyTemplates コース
クエリの折りたたみと SQL Server への接続

結論

最後に、SQL SELECTステートメントとそれに関連する基本的なコマンド、句、キーワードについて説明しました。SELECT Top句とORDER BYキーワードを使用して、テーブルからすべてのレコードを抽出する方法、またはテーブルから特定の列を抽出する方法を学習しました。

ASキーワードを使用して列とテーブルのエイリアスを作成する方法も学びました。この SQL ステートメントの使用法は、データを選択するだけでなく、抽出されたデータや行を制限したり、結果を特定の列で昇順と降順で並べ替えたりする場合にも十分に理解できたと思います。

ではごきげんよう、

ハーフィズ


Power Automate の文字列関数: Substring と IndexOf

Power Automate の文字列関数: Substring と IndexOf

Microsoft フローで使用できる 2 つの複雑な Power Automate String 関数、substring 関数とindexOf 関数を簡単に学習します。

LuckyTemplates でビジュアル ツールチップを作成する

LuckyTemplates でビジュアル ツールチップを作成する

LuckyTemplates ツールチップを使用すると、より多くの情報を 1 つのレポート ページに圧縮できます。効果的な視覚化の手法を学ぶことができます。

Power Automate で HTTP 要求を行う

Power Automate で HTTP 要求を行う

Power Automate で HTTP 要求を作成し、データを受信する方法を学んでいます。

LuckyTemplates で日付テーブルを作成する方法

LuckyTemplates で日付テーブルを作成する方法

LuckyTemplates で簡単に日付テーブルを作成する方法について学びましょう。データの分析と視覚化のための効果的なツールとして活用できます。

2 つの方法による SharePoint 列の検証

2 つの方法による SharePoint 列の検証

SharePoint 列の検証の数式を使用して、ユーザーからの入力を制限および検証する方法を学びます。

SharePoint リストを Excel または CSV ファイルにエクスポート

SharePoint リストを Excel または CSV ファイルにエクスポート

SharePoint リストを Excel ファイルおよび CSV ファイルにエクスポートする方法を学び、さまざまな状況に最適なエクスポート方法を決定できるようにします。

Power Automate のオンプレミス データ ゲートウェイ

Power Automate のオンプレミス データ ゲートウェイ

ユーザーがコンピューターから離れているときに、オンプレミス データ ゲートウェイを使用して Power Automate がデスクトップ アプリケーションにアクセスできるようにする方法を説明します。

DAX 数式での LASTNONBLANK の使用

DAX 数式での LASTNONBLANK の使用

DAX 数式で LASTNONBLANK 関数を使用して、データ分析の深い洞察を得る方法を学びます。

CROSSJOIN 関数の使用方法 – LuckyTemplates および DAX チュートリアル

CROSSJOIN 関数の使用方法 – LuckyTemplates および DAX チュートリアル

LuckyTemplates で予算分析とレポートを実行しながら、CROSSJOIN 関数を使用して 2 つのデータ テーブルをバインドする方法を学びます。

TREATAS 関数を使用して LuckyTemplates で仮想リレーションシップを作成する

TREATAS 関数を使用して LuckyTemplates で仮想リレーションシップを作成する

このチュートリアルでは、LuckyTemplates TREATAS を使用して数式内に仮想リレーションシップを作成する方法を説明します。