MySQL 中的 DELETE
语句用于从表中删除记录,基本语法格式如下:
DELETE FROM table_name
[WHERE condition]
[ORDER BY column_name [ASC | DESC]]
[LIMIT row_count];
参数说明:
FROM table_name
指定要删除数据的表名。WHERE condition
(可选)
指定删除的条件。若省略,将删除表中所有数据(慎用!)。ORDER BY column_name
(可选)
按指定列排序后删除(通常结合LIMIT
使用)。LIMIT row_count
(可选)
限制删除的行数。
示例:
1. 删除符合条件的记录
DELETE FROM employees
WHERE salary < 5000 AND department = 'HR';
删除 employees
表中薪资低于5000且部门为HR的员工。
2. 清空整个表(无条件)
DELETE FROM temp_logs; -- 删除所有日志记录(谨慎操作!)
3. 按顺序限制删除数量
DELETE FROM user_sessions
ORDER BY last_activity ASC
LIMIT 1000;
删除最早未活动的1000条会话记录。
⚠️注意事项:
- 备份数据:执行前建议先备份或开启事务。
- 性能影响:大表删除可能锁表,建议分批操作。
- 替代方案:快速清空表可用
TRUNCATE TABLE table_name;
(但无法带条件)。
如果需要更具体的用法,可以进一步说明场景!
内容由零声教学AI助手提供,问题来源于学员提问