SELECT
のもっとも単純な形式では、テーブルのすべての内容が取り出されます。
mysql> SELECT * FROM pet;
+----------+--------+---------+------+------------+------------+
| name | owner | species | sex | birth | death |
+----------+--------+---------+------+------------+------------+
| Fluffy | Harold | cat | f | 1993-02-04 | NULL |
| Claws | Gwen | cat | m | 1994-03-17 | NULL |
| Buffy | Harold | dog | f | 1989-05-13 | NULL |
| Fang | Benny | dog | m | 1990-08-27 | NULL |
| Bowser | Diane | dog | m | 1979-08-31 | 1995-07-29 |
| Chirpy | Gwen | bird | f | 1998-09-11 | NULL |
| Whistler | Gwen | bird | NULL | 1997-12-09 | NULL |
| Slim | Benny | snake | m | 1996-04-29 | NULL |
| Puffball | Diane | hamster | f | 1999-03-30 | NULL |
+----------+--------+---------+------+------------+------------+
SELECT
のこの形式は、たとえばテーブルに初期データセットをロードした直後など、テーブル全体を取り出すときに役立ちます。たとえば、Bowser
の誕生日が正しくないようだと気付いたとします。血統書の原本を確認すると、1979
年ではなく 1989
年が正しいことがわかりました。
これを修正するには、少なくとも 2 つの方法があります。
ファイル pet.txt
を編集して間違いを修正したあと、DELETE
と LOAD
DATA
を使用してテーブルを空にしてから再ロードします。
mysql>DELETE FROM pet;
mysql>LOAD DATA LOCAL INFILE 'pet.txt' INTO TABLE pet;
ただし、この方法では、Puffball のレコードも再度入力する必要があります。
UPDATE
ステートメントを使用して、間違ったレコードだけを修正します。
mysql> UPDATE pet SET birth = '1989-08-31' WHERE name = 'Bowser';
UPDATE
は該当するレコードだけを変更するため、テーブルを再ロードする必要はありません。