データを取得する 【SELECT】 MySQL
データを取得する書式
テーブルにあるデータを取得する書式は次のとおりです。
SELECT 【フィールド名1】, 【フィールド名2】, ・・・ FROM 【テーブル名】 WHERE 【条件文】;
データを取得してみよう
「painter」テーブルからidフィールドとnameフィールドのデータを取得してみましょう。
今回のように取得するフィールドが複数ある場合は「,(カンマ)」で区切って指定します。
mysql> SELECT id, name FROM painter; +----+----------+ | id | name | +----+----------+ | 1 | モネ | | 2 | ゴッホ | | 3 | ドガ | | 4 | ピカソ | | 5 | クリムト | | 6 | ゴヤ | +----+----------+ 6 rows in set (0.00 sec)
すべてのフィールドを取得する場合はフィールド名部分にすべてを意味する記号「*(アスタリスク)」を記述します。
mysql> SELECT * FROM painter;
+----+----------+-------+
| id | name | birth |
+----+----------+-------+
| 1 | モネ | 1840 |
| 2 | ゴッホ | 1853 |
| 3 | ドガ | 1834 |
| 4 | ピカソ | 1881 |
| 5 | クリムト | 1862 |
| 6 | ゴヤ | 1746 |
+----+----------+-------+
6 rows in set (0.00 sec)
「WHERE」で条件をつけると、その条件と合致したデータのみ取得できます。例えばidフィールドが「3」のデータを取得したい時は以下のような書式になります。
※「WHERE」の詳細は「」を参照してください
mysql> SELECT * FROM painter WHERE id=3;
+----+------+-------+
| id | name | birth |
+----+------+-------+
| 3 | ドガ | 1834 |
+----+------+-------+
1 row in set (0.27 sec)
Lesson 03
以下の表示結果になる書式を考えましょう
+-------+----------+ | birth | name | +-------+----------+ | 1840 | モネ | | 1853 | ゴッホ | | 1834 | ドガ | | 1881 | ピカソ | | 1862 | クリムト | | 1746 | ゴヤ | +-------+----------+