SQLite | データの追加・更新・削除 | データの削除(DELETE)
DELETE文を使用して、テーブルに保存されているデータを削除する方法について説明します。
テーブルのデータを削除する
テーブルからデータを削除するには、DELETE文を使用します。構文は次のとおりです。
DELETE FROM テーブル名 WHERE 条件式;
削除する行をWHERE句の条件式で指定します。条件に一致する行が複数ある場合は、まとめて削除されます。WHERE句を省略すると、テーブル内のすべての行が削除されます。
実際に試してみましょう。次のテーブルを作成し、データを追加します。
create table user (id integer, name text, old integer);
insert into user values (1, 'devkuma', 32);
insert into user values (2, 'kimkc', 15);
insert into user values (3, 'araikuma', 18);
insert into user values (4, 'happykuma', 24);
insert into user values (5, 'mykuma', 19);
sqlite> create table user (id integer, name text, old integer);
sqlite>
sqlite> insert into user values (1, 'devkuma', 32);
sqlite> insert into user values (2, 'kimkc', 15);
sqlite> insert into user values (3, 'araikuma', 18);
sqlite> insert into user values (4, 'happykuma', 24);
sqlite> insert into user values (5, 'mykuma', 19);
sqlite>
まず、old列の値が20未満の行を削除し、テーブルを検索して削除されたことを確認します。
delete from user where old < 20;
select * from user;
sqlite> delete from user where old < 20;
sqlite>
sqlite> select * from user;
id name old
---------- ---------- ----------
1 devkuma 32
4 happykuma 24
sqlite>
次に、テーブル内のすべてのデータを削除します。次の文を実行すると、すべての行が削除されます。
delete from user;
select * from user;
sqlite> delete from user;
sqlite>
sqlite> select * from user;
sqlite>