Mysql
 sql >> Database >  >> RDS >> Mysql

MySQL:non è possibile specificare la tabella di destinazione per l'aggiornamento nella clausola FROM

Ricevi questo errore?

È perché non puoi aggiornare direttamente la tabella se la stai utilizzando su un'altra istruzione subselect. Un'alternativa è unirsi al tavolo con se stesso.

UPDATE  list a
        INNER JOIN
        (
            SELECT  dn 
            FROM    list 
            GROUP   BY dn 
            HAVING  COUNT(*) < 2000 
        ) b ON a.dn = b.dn
SET     a.li = '6'
WHERE   a.li = '5