Mysql
 sql >> Datenbank >  >> RDS >> Mysql

So löschen Sie Datensätze in DB mit mySQL mithilfe von Group By

Die Antwort finden Sie unter folgendem Link. Es wird Ihr Problem lösen:

Grundsätzlich können Sie nicht aus derselben Tabelle löschen (verändern), die Sie in SELECT verwenden. Es gibt Möglichkeiten, dies zu umgehen, die auf dieser Seite dokumentiert sind.

Das Folgende funktioniert, indem Sie Ihren verschachtelten select machen eine temporäre Tabelle.

delete from TAB
where CourseName not in (select temp.CourseName
                         from (select t.CourseName
                               from TAB t
                               group by t.CourseName
                               having count(t.CourseName) > 100
                              ) as temp
                        )