如題,問題表結構如下:
思路如下,以name分組選出最小的id,刪除id不在此查詢的結果的記錄,操作以及報錯如下:
原因是: MySql中不允許在Update/Delete中使用子查詢引用操作目標表。
處理方法:使用臨時表
id not in a
a裏面存的是 minid
這樣,在delete中就沒查詢目標表了,而是查詢了a
通俗理解:爸爸只能管自家兒子,管不了兒子的朋友;
可以看到,第六條記錄被成功刪除了
如題,問題表結構如下:
思路如下,以name分組選出最小的id,刪除id不在此查詢的結果的記錄,操作以及報錯如下:
原因是: MySql中不允許在Update/Delete中使用子查詢引用操作目標表。
處理方法:使用臨時表
id not in a
a裏面存的是 minid
這樣,在delete中就沒查詢目標表了,而是查詢了a
通俗理解:爸爸只能管自家兒子,管不了兒子的朋友;
可以看到,第六條記錄被成功刪除了