- SQL が「データベースへの命令」だと分かる
SELECTで、ほしい行(ぎょう)だけしぼれるCOUNTで、いくつあるか数えられる
おうちの人と一緒に。見るだけだから安心。15〜20分。
SQL:表に話しかける言葉
まえの回で見た、記録がたまる「テーブル」(表)をおぼえてる? あの表は attempts という名前で、こんな列(れつ)がならんでいます。
どの段(dan)の、何をかけて(multiplier)、何をえらんで(chosen)、正かいか(is_correct)、何ミリびょうかかったか(elapsed_ms)…が1行ずつ入っているよ。
この表に「○○を見せて」とお願いする言葉が SQL。データベースに話しかける、せんようの言葉です。
えらぶ・しぼる・数える
いちばん多いのが SELECT(セレクト=えらぶ)。まずは表をぜんぶ見てみよう。
SELECT * FROM attempts
* は「ぜんぶの列」という意味。FROM attempts は「attempts の表から」。これで全部の記録が出ます。
つぎは WHERE(ウェア)でしぼる。WHERE は「○○のものだけ」というじょうけん。
-- 正かいした記録だけ
SELECT * FROM attempts WHERE is_correct = true
-- 2の段だけ
SELECT * FROM attempts WHERE dan = 2
「正かいのものだけ」「2の段のものだけ」みたいに、ほしい行だけのこせるんだね。
さいごに COUNT(カウント=数える)。何行あるかを数えてくれます。
-- ぜんぶで何問やったか
SELECT COUNT(*) FROM attempts
▼ こんなふうに数字で出る120
表を見せるかわりに「いくつ?」を1つの数字で返してくれるよ。
おうちの人にデータベースを見る画面を出してもらって、いっしょに打ってみよう。
- まずは
SELECT * FROM attemptsで、自分の記録をぜんぶ見る WHERE is_correct = trueをつけて、正かいだけにしぼるSELECT COUNT(*) FROM attemptsで、ぜんぶで何問やったか数えるWHERE dan = 2をつけて、2の段だけにしぼってみる
やくそく: まずは「見るだけ」の SELECT からはじめよう。DELETE(けす命令)など、データを消したり書きかえたりするものは、かならずおうちの人といっしょに。見るだけなら、こわすしんぱいはありません。
💡 AIにきいてみよう:「2の段で正かいした数だけを数えるSQLは?」と聞いて作ってもらい、そのあと「このSQLは何をしているの?」と意味も説明してもらおう。
WHERE がどう組み合わさっているか、読む練習になるよ。
SQLは何のための言葉?(→ データベース(表)への命令)- ほしい行だけにしぼるのは、どの言葉?(→
WHERE) - いくつあるか数えるのは、どの言葉?(→
COUNT)
つぎの回では、アプリから表に「1件保存して、また読む」往復をやってみます。