見出し画像

SELECT文の基本

こんにちは、よさそう®です。

先週の「SQLのススメ」の後半で触れたSELECT文の基本をまとめてみます。
データを取り回すかたにとっては、SELECT文が使えればSQLは十分だと思います。

SELECT文とは

ズバリ「データベースと質問するお作法」です。

人と人が会話する時も「今朝、何食べた?」とか「明日は傘もっていったほうがいい?」といった質問しますよね。

会話する相手が「データベース」だとしたら、データベースに向かって質問をして、情報を引き出します。

質問の仕方によっては期待した結果が得られなかったりします。
たとえば「明日は傘もっていったほうがいい?」と聞いても、「場所はどこ?」と聞き返される可能性があります。
とはいえ、人間は共通のコンテキストがあるから「(いまいる場所のことかな)」とか「(あした一緒に山に行くから、山のことかな)」と想像してくれます。

ですが、コンピュータは残念なくらいに人間にできる想像ができません。なので質問のお作法が必要になります。
きっちりかっきり欲しい情報を定義してあげる、それがSELECT文です。

SELECT文の基本形

そんなSELECT文、欲しい情報を明確に定義することが基本形となります。

いきなりSELECT文の構文を書きます。あとで一つずつ解説します。

SELECT 欲しいフィールド名 
FROM テーブル名 
WHERE 条件にしたいフィールド名 [条件式] 条件にしたい値

さきほどの明日の天気を知りたい場合、きっちりかっきりと人に聞くときは、こんな感じですよね。

「明日の富士山頂上の朝10時の天気を教えて」

これをSELECT文で書くとこんな感じになります。

SELECT 天気
FROM 天気データベース.日本の天気テーブル
WHERE 日付 = 明日
AND 時刻 = 朝10時
AND 場所 = 富士山頂上

SELECTのあとの”天気”が”欲しいフィールド”となります。今回は天気を知りたいので”天気”というフィールドをとってきます。

FROMのあとの”天気データベース.日本の天気テーブル”は”天気データベースのなかにある日本の天気テーブル”を意味します。

そしてWHEREのあとは3つの条件をAND、つまりすべてを満たすことを条件としています。
3つの条件は”日付が明日で、時刻は朝10時で、場所は富士山頂上”となります。

テーブルとフィールドはスプレッドシートをイメージ

データベースの構造に慣れていないと、この書き方はとっつきにくいものですよね。私も最初はそうでした。

それでなにがイメージしやすいかというとExcelやGoogleスプレッドシートのような表計算の一覧をイメージするとわかりやすくなると思います。

シート名がテーブル名に、各列がフィールド名となります。

このなかから欲しい情報を取り出すときに、表計算ソフトではフィルター機能を使うと思います。

データベースから欲しい情報を取り出すときにはフィルター機能の代わりに、SELECT文を使って取り出すということになります。

最後までお読みいただき、誠にありがとうございました。

よろしければいいね!やフォローをいただけたら、激しく嬉しいです。続けていく励みになります。

それでは、また!

この記事が気に入ったらサポートをしてみませんか?