https://docs.google.com/presentation/d/e/2PACX-1vQ-DE7I1Hl_ubodlcV_oJUfet14MF--Qxk_JorXJ4MFS4s_3kWW-8rxCGoWs__iUgk6qGbC9Ms_sfcV/embed?start=false&loop=false&delayms=3000
先ほど作成したレコードについて、実際に抽出して結果を確認してみましょう。レコードを抽出するには、SELECT
の構文を使用します。
例えば、スライドにあるようにnameがtaroであるレコードを抽出したい場合、このようなSQLを実行します。
SELECT
name, age
FROM
person
WHERE
name = 'taro';
SELECT
の後に、抽出したい項目名を記載します。今回はnameとageを指定していますが、nameのみ、ageのみなど項目を絞ることもできます。また、項目名に*を記載することで、全項目を対象とすることもできます。項目数や件数が少ない場合は全項目でも良いのですが、項目数が多いと性能の問題が発生するため、必要な項目に絞ることが推奨されます。
whereと記載した部分に、検索条件を記載します。今回はnameがtaroであるレコードを抽出しています。なおWHEREは省略可能で、省略した場合はレコードを全件取得します。件数が少ないテーブルであれば問題ないのですが、件数が多いと処理時間が膨大になるため、注意が必要です。
それでは、実際にレコードの検索をしてみましょう。先ほど紹介しSQLを実行してみます。
select
name, age
from
person
where
name = 'taro';
そうすると、以下のような実行結果が表示されます。一つ前のセクションで登録した内容に応じて、データが出力されていると思います。
+------+------+
| name | age |
+------+------+
| taro | 35 |
+------+------+
1 row in set (0.00 sec)
SELECT
が正しく行われているかを確認するために、もう1件レコードを登録してみたいと思います。nameがjiro、ageが25のレコードを作成します。
INSERT INTO
person (name, age)
VALUES
('jiro', '25');
その状態で、今度はpersonの全件を抽出するSQLを実行します。
select
name, age
from
person