MariaDB/MySQL

[MySQL/MariaDB] ”delete”文でデータ削除

2018年9月2日

こんにちは!土門大貴(daikidomon)です。

MySQL/MariaDBのデータ削除SQL、「delete」文について紹介します。

delete」文は、「insert」、「update」と同様にDML(Data Manipulation Language )と呼ばれ、データを操作するSQL文になります。

基本構文:delete ~ from

delete文の基本構文は以下になります。
delete from <テーブル名>
where <条件>;
下がサンプルのdelete文になります。

MariaDB [test001]> select *
-> from EMPLOYEE;
+-------+---------------+--------+
| EMPNO | NAME | SALARY |
+-------+---------------+--------+
| 00001 | TARO TANAKA | 300000 |
| 00002 | HANAKO YAMADA | 800000 |
| 00003 | ICHIRO HANAKO | 500000 |
+-------+---------------+--------+
3 rows in set (0.00 sec)

MariaDB [test001]>
MariaDB [test001]> delete from EMPLOYEE
-> where EMPNO = '00001';
Query OK, 1 row affected (0.00 sec)

MariaDB [test001]> commit;
Query OK, 0 rows affected (0.00 sec)

MariaDB [test001]> select *
-> from EMPLOYEE;
+-------+---------------+--------+
| EMPNO | NAME | SALARY |
+-------+---------------+--------+
| 00002 | HANAKO YAMADA | 800000 |
| 00003 | ICHIRO HANAKO | 500000 |
+-------+---------------+--------+
2 rows in set (0.00 sec)

表内の全データ削除

delete文で全データを削除するのは以下になります。
delete from <表名>;
条件を付けないことで全データを削除することができます。

下がサンプルのdelete文になります。

MariaDB [test001]> select *
-> from EMPLOYEE;
+-------+---------------+--------+
| EMPNO | NAME | SALARY |
+-------+---------------+--------+
| 00002 | HANAKO YAMADA | 800000 |
| 00003 | ICHIRO HANAKO | 500000 |
| 00001 | TARO TANAKA | 300000 |
+-------+---------------+--------+
3 rows in set (0.00 sec)

MariaDB [test001]> delete from EMPLOYEE;
Query OK, 3 rows affected (0.00 sec)

MariaDB [test001]> commit;
Query OK, 0 rows affected (0.00 sec)

MariaDB [test001]> select *
-> from EMPLOYEE;
Empty set (0.00 sec)

MariaDB [test001]>
 

関連記事

-MariaDB/MySQL

Copyright© スタートアップIT企業社長のブログ , 2020 All Rights Reserved.