DELETE FROM exam_record WHERE submit_time IS NULL OR TIMESTAMPDIFF(MINUTE,start_time,submit_time)<5 ORDER BY start_time LIMIT 3
题目:
请删除exam_record表中未完成作答或作答时间小于5分钟整的记录中,开始作答时间最早的3条记录。(submit_time 是交卷时间,即结束时间,如果未完成的话,则为空)
拆解问题:
需要删除的信息主要有三个筛选条件:
- 第一,完成时间为空值的
- 第二,完成时间与作答时间的分钟差小于5的
- 第三,在以上信息的基础之上进行排序,作答时间在前三名(用ORDER BY 排序+LIMIT 做限制,删除前3条)
- 执行顺序:from,where,order by,limit,delete