为了从一个数据表中删除(去掉)数据,可使用DELETE语句
语法:
DELETE FROM表名 [WHERE 条件] [ORDER BY…] [LIMIT row_count];
DELETE FROM要求指定从中删除数据的表名,WHERE子句过滤要删除的行,ORDER BY子句按照指定的顺序对行进行删除操作,LIMIT子句限制可删除的行数
DELETE不需要列名或通配符。DELETE删除整行而不是删除列,为了删除指定的列,可使用UPDATE语句
导入数据
DROP TABLE IF EXISTS `order_detail`;
CREATE TABLE `order_detail` (
`order_id` varchar(8) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL,
`order_time` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
INSERT INTO `order_detail` VALUES ('o001', '2020-06-15 09:12:33');
INSERT INTO `order_detail` VALUES ('o002', '2020-06-15 13:24:09');
INSERT INTO `order_detail` VALUES ('o003', '2020-06-16 10:44:24');
INSERT INTO `order_detail` VALUES ('o004', '2020-06-17 08:05:52');
INSERT INTO `order_detail` VALUES ('o005', '2020-06-18 18:03:43');
order_detail表
下面的语句从order_detail表中删除一行:
DELETE FROM order_detail WHERE order_id = 'o004';
结果展示:
在这个例子中,只删除order_id = 'o0004’那行的记录,如果省略WHERE子句,它将删除表中每个order记录
DELETE FROM order_detail;
结果展示:
如果WHERE条件没有匹配到任何记录,DELETE语句不会报错,也不会有任何记录被删除
DELETE语句从表中删除行,甚至是删除表中所有行。但是,DELETE不删除表本身(删除的是表的内容而不是表 )
扩展:文章来源:https://www.toymoban.com/news/detail-459540.html
如果想从表中删除所有行,不要使用DELETE语句,可使用TRUNCATE TABLE语句,它能够完成与DELETE语句相同的文章来源地址https://www.toymoban.com/news/detail-459540.html
到了这里,关于[Mysql] 删除数据的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!