![見出し画像](https://assets.st-note.com/production/uploads/images/76959775/rectangle_large_type_2_74cba79e583d0e1dd2b435631cf8d3dc.png?width=1200)
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スプレッドシートのような表計算の一覧をイメージするとわかりやすくなると思います。
![](https://assets.st-note.com/img/1651197422946-LVkoozwb2X.png)
シート名がテーブル名に、各列がフィールド名となります。
このなかから欲しい情報を取り出すときに、表計算ソフトではフィルター機能を使うと思います。
データベースから欲しい情報を取り出すときにはフィルター機能の代わりに、SELECT文を使って取り出すということになります。
最後までお読みいただき、誠にありがとうございました。
よろしければいいね!やフォローをいただけたら、激しく嬉しいです。続けていく励みになります。
それでは、また!
この記事が気に入ったらサポートをしてみませんか?