2014-07-13 16:31:54
来源:中存储网
下面来看MySQL数据库中delete的用法,delete可以用来删除数据表中的记录行,当然它可以全部删除记录也可以有选择的删除其中的记录。关于这些详细的介绍你可以看下面的详细介绍。
DELETE [LOW_PRIORITY] FROM tbl_name [WHERE where_expr][LIMIT n]
从表tbl_name中删除行。所删除的行是那些与表达式where_expr 中给出条件相符的行。例:
DELETE FROM score WHERE event_id =14
DELETE FROM member WHERE expiration < current_date
如果省略WHERE 子句,表中所有记录都将被删除。除非不给出WHERE 子句,否则DELETE 将返回所删除记录的数目。在不给出
WHERE子句的这种特殊情况下,MySQL 将优化删除过程,它将从头开始建立数据和索引文件,而不是一行一行地删除记录。这样做极快,但不给出删除的
记录计数,返回的计数值为0。为了得出真实的删除记录数,应该给出能选中所有记录的WHERE 子句。例如:
DELETE FROM tbl_name WHERE 1>0
但这样做会有一定的性能损失。
指定LOW_PRIORITY 使此语句被延迟至无客户机从表中读数据为止。如果给出LIMIT 子句,则值n 规定了将要删除的最大行数。LIMIT 是在MySQL 3.22.7中引入的。