Developer

【SQL基礎】SELECT文の基本構文
2020.10.30
Lv1

【SQL基礎】SELECT文の基本構文

データベースからデータを検索する際には、SELECT文を使います。


SELECT文の基本構文

SQLでは、データを検索するためにSELECT文が用意されており、最も多用する基本的なSQL文となります。
基本構文は以下の通りです。

select カラム名 from テーブル名;

【SQL基礎】記述に関するルールに出ている通り、SELECT文は「SELECT句」と「FROM句」からなっています。
SELECT句にはテーブルから取得したいカラム名を記述し、FROM句にはデータを検索したいテーブルを記述します。

※カラムとは列のこと、テーブルとは表自体のことです。
参考:【SQL基礎】テーブルの構造

※データベース未選択の場合はエラーが出ます。
その場合は以下のコマンドを入力して先にデータベースを選択しましょう。

use データベース名

参考:【SQL基礎】MySQLの基本操作コマンド

 

では、実際に使用してみましょう。
今回は例として、以下のようなテーブル(テーブル名:teachers)を使用します。

まずは一番シンプルな例として、このテーブルからnameカラムのみを抽出してみます。

select name from teachers;

正常に実行されれば上記画像のようにname列のみが表示されます。
今回はteachersテーブルからnameカラムのみを表示したいので、SELECT句で「name」を、FROM句で「teachers」を指定しています。


複数の列を出力する

カラム名は、カンマで区切って記述することで複数指定することができます。
例として、teachersテーブルからidとnameカラムを表示してみましょう。


select id, name from teachers;

このようにSELECT句でidとnameをカンマで区切って指定することで複数列を表示することができます。
また、カンマで区切って複数カラムを指定し表示する際は、SELECT句に書いた順に表示されます。


すべての列を表示する

すべてのカラムを検索する場合には、二通りの書き方があります。
① カラム名をすべて指定する。
② *(アスタリスク:すべてのものを意味する記号)を使用する。

実際に、teachersテーブルのすべての列を表示してみましょう。


select id, name, address, age from teachers;
select * from teachers;

今回の場合、両方ともに、実行結果は上記画像のようになります。
また、アスタリスクを使用した場合は、TABLE定義の順番通りにカラムが表示されます。

以上、「SELECT文の基本構文」でした。


今回の学習ポイント

・データを検索するにはSELECT文を使用する。
・SELECT句には、カンマで区切って複数カラムを指定できる。
・SELECT句に*を使用すると、全ての列を表示することができる。


練習問題

問題として使用するデータは「SQL練習問題」のものを使用しています。
以下からダウンロード可能です。
また、ダウンロードしたら以下のようにしてworldcup2014データベースを作成し、インポートしてください。
※worldcup2014.zip解凍してできるworldcup2014.sqlファイルをCドライブ直下に配置した場合。

worldcup2014.zip

[sql] CREATE DATABASE worldcup2014;

use worldcup2014

source C:\worldcup2014.sql
[/sql]

1.playersテーブルから「所属クラブ(club)」、「背番号(uniform_num)」、「名前(name)」、「ポジション(position)」のカラムをこの順で抽出する。
答え
[sql] SELECT club, uniform_num, name, position FROM players;
[/sql]

SELECT句にclub, uniform_num, name, positionと指定することで
「所属クラブ(club)」、「背番号(uniform_num)」、「名前(name)」、「ポジション(position)」の順に表示することができます。

2.countriesテーブルからカラム名を指定せずに全列のデータを抽出する。
答え
[sql] SELECT * FROM countries;
[/sql]

SELECT句に*(アスタリスク)を指定することで全ての列を表示でききます。

 

 

 

連載目次リンク

SQL基礎 連載目次

関連する連載リンク

SQL練習問題 一覧まとめ