概要


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)

もう1件登録してみる


SELECTが正しく行われているかを確認するために、もう1件レコードを登録してみたいと思います。nameがjiro、ageが25のレコードを作成します。

INSERT INTO 
	person (name, age) 
VALUES 
	('jiro', '25');

その状態で、今度はpersonの全件を抽出するSQLを実行します。

select 
	name, age
from
	person