题目
表数据:
题目:将department为心血科且d_id靠前2位的两位医生资料删除
过程
按照之前写delete的习惯,先select出来,再把select * 改为delete,发现能查询出来,但是删除报错
然后就想着改用in来删除
报错说版本不支持 用 in,这时候给查询加个别名
解决
delete from `doctor` where d_id in (select d_id from (select d_id from `doctor` where department ='心血科' GROUP BY d_id desc LIMIT 2) as id);
学习
用order by 和limit 来搭配删除时,limit外层再嵌套一层(一定要最后加上 as … 以构成表名)才能删除成功