在mysql中可以使用DELETE語(yǔ)句來(lái)刪除數(shù)據(jù)表的一行或者多行數(shù)據(jù),語(yǔ)法“DELETE FROM <表名> [WHERE 子句] [ORDER BY 子句] [LIMIT 子句]”;在不使用WHERE條件的時(shí)候,將刪除所有數(shù)據(jù)。
在 MySQL 中,可以使用 DELETE 語(yǔ)句來(lái)刪除表的一行或者多行數(shù)據(jù)。
刪除單個(gè)表中的數(shù)據(jù)
使用 DELETE 語(yǔ)句從單個(gè)表中刪除數(shù)據(jù),語(yǔ)法格式為:
DELETE FROM <表名> [WHERE 子句] [ORDER BY 子句] [LIMIT 子句]
語(yǔ)法說(shuō)明如下:
-
<表名>:指定要?jiǎng)h除數(shù)據(jù)的表名。
-
ORDER BY 子句:可選項(xiàng)。表示刪除時(shí),表中各行將按照子句中指定的順序進(jìn)行刪除。
-
WHERE 子句:可選項(xiàng)。表示為刪除操作限定刪除條件,若省略該子句,則代表刪除該表中的所有行。
-
LIMIT 子句:可選項(xiàng)。用于告知服務(wù)器在控制命令被返回到客戶端前被刪除行的最大值。
注意:在不使用 WHERE 條件的時(shí)候,將刪除所有數(shù)據(jù)。
刪除表中的全部數(shù)據(jù)
【實(shí)例 1】刪除 tb_courses_new 表中的全部數(shù)據(jù),輸入的 SQL 語(yǔ)句和執(zhí)行結(jié)果如下所示。
mysql> DELETE FROM tb_courses_new; Query OK, 3 rows affected (0.12 sec) mysql> SELECT * FROM tb_courses_new; Empty set (0.00 sec)
根據(jù)條件刪除表中的數(shù)據(jù)
【實(shí)例 2】在 tb_courses_new 表中,刪除 course_id 為 4 的記錄,輸入的 SQL 語(yǔ)句和執(zhí)行結(jié)果如下所示。
mysql> DELETE FROM tb_courses -> WHERE course_id=4; Query OK, 1 row affected (0.00 sec) mysql> SELECT * FROM tb_courses; +-----------+-------------+--------------+------------------+ | course_id | course_name | course_grade | course_info | +-----------+-------------+--------------+------------------+ | 1 | Network | 3 | Computer Network | | 2 | Database | 3 | MySQL | | 3 | Java | 4 | Java EE | +-----------+-------------+--------------+------------------+ 3 rows in set (0.00 sec)
由運(yùn)行結(jié)果可以看出,course_id 為 4 的記錄已經(jīng)被刪除。
推薦教程:mysql視頻教程