![見出し画像](https://assets.st-note.com/production/uploads/images/83582722/rectangle_large_type_2_58a82fa2053c7d7147b872dbb8fae31b.jpeg?width=1200)
【SQL】SELECT FROM文の使い方を例文を用いて解説(練習問題あり)
SELECT A FROM B 文は抽出の基本であり、どんなクエリーを書く際にも使用されます。
そんなSELECT FROM 文を初心者でも理解しやすいよう、例題を用いて、徹底解説していこうと思います。
SELECT FROM文の基本構文
SELECT FROM 文は、「SELECT」と「FROM」に分かれる。
SELECT:カラムを取り出す処理
FROM:どのデータテーブルから引っ張り出すのかを指定
以下の表を用いて説明すると、
![](https://assets.st-note.com/img/1652417398938-7r0AFub3ec.png?width=1200)
SELECT
カラム名(列)
FROM
テーブル名
SELECTで、「名前」カラムを指定して、FROMで「1年1組基本情報」テーブルを指定することによって、
「1年1組の生徒名一覧」を抜き出すことができる。
SELECT文は、複数指定することもできるのが特徴だ。
ではここからは、練習問題を用いて説明していく。
SELECT FROM文の練習問題
今回は、「単一カラムを抜き出す問題」と「複数カラムを抜き出す」
2つの例題を説明しよう。
![](https://assets.st-note.com/img/1652417662965-EVydtR81Ay.png?width=1200)
練習問題1 : 「1年1組基本情報テーブルから、年齢一覧を抽出しなさい」
回答は以下である。
SELECT
年齢
FROM
1年1組基本情報 ;
SELECTで抜き出すカラム(列)を決め、FROMで抜き出し元テーブルを指定することで、処理を行うことができる。
またクエリー(文章)の最後にセミコロン「;」を入れているが、用いるサービスによって不必要なものもあるので、ぜひ皆さまの所属する企業に合わせてもらいたい。
練習問題2 : 「1年1組基本情報テーブルから、id・名前・年齢一覧を抽出しなさい」
次は、複数カラムを抜き出す処理。
回答は以下である。
SELECT
id,
名前,
年齢,
FROM
1年1組基本情報 ;
カラムとカラムの間にカンマ「,」を入れることで、複数カラムを指定することができる。
SELECT FROM文でよくあるエラーと解消法
では、SELECT FROM文でよく起こるエラーと、その解消法を解説していく。
「,」や、「;」を入れ忘れるケース
複数カラムを指定する場合のカンマ「,」忘れるケース、またセミコロン「;」を入れ忘れるケースは熟練のSQLアナリストも犯すケースなので、冷静に対応してもらいたい。
大文字のスペース「 」を入れているケース
SELECT
id,
名前,
年齢,
FROM
1年1組基本情報 ;
この文章は、読者に見やすくするために大文字のスペース「 」を入れているが、SQLでは大文字も文字として認識されてしまうために、エラーが出てしまう。
このエラーは、タブスペースや、半角スペースを用いることでエラーを解消することができる。
FROMで指定するテーブル名やカラム名を間違えているケース
テーブル名や、カラム名を間違えている場合、構文があっていてもエラーが出てしまうもだ。
以下のテーブルだと、「1年1組基本情報」と指定、そして抜き出したいカラムを正確に打ち込む必要がある。
![](https://assets.st-note.com/img/1652418768442-12q5g19cPa.png?width=1200)
豆知識
SELECT FROM文でよく使う豆知識を紹介しよう。
アスタリスク「*」を用いると、全カラムを抜き出せる
SELECT
*
FROM
1年1組基本情報 ;
と記入することで、「1年1組基本情報」テーブルの全カラム全レコードを抜き出すことができる。
最後に自己紹介
はじめまして、ニューズピックス(https://newspicks.com/)でマーケターをしている平野佑樹です。
普段は、JobPicksというジョブ型キャリアを支援するWebサービス(https://job.newspicks.com/)を運営しており、
SQLやGoogle Analyticsを用いた分析
TwitterをはじめとしたSNS運用(ショート動画にも挑戦予定)
メールマガジン運用
Google Optimizeなどを用いたA/Bテスト
Search Consoleを用いてコンテンツSEOや開発に関わるSEO施策
など、幅広く業務を担当しています。
マーケターの業務を後押しするtipsをnoteにて発信しております。
(ぜひ、いいねや拡散お願いいたします🙇)
ぜひ、フォローや興味持っていただいた方は、(https://twitter.com/enterrocken)にDMいただけますと幸いです!
この記事が気に入ったらサポートをしてみませんか?