Erreur de requête avec sous requête

Signaler
Messages postés
500
Date d'inscription
lundi 24 août 2009
Statut
Membre
Dernière intervention
13 avril 2021
-
Messages postés
14787
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
27 avril 2021
-
Bonjour,
voici l'erreur qui s'affiche :
UPDATE materiaux SET clef = 'axKZn038' WHERE id IN (SELECT M.id FROM materiaux M WHERE M.date BETWEEN '2021-04-12' AND '2021-04-13' AND M.id_program = 3 GROUP BY M.lot,M.id_etape )
MySQL a répondu: Documentation

#1093 - You can't specify target table 'materiaux' for update in FROM clause



UPDATE materiaux SET clef = 'axKZn038' WHERE id IN (SELECT M.id FROM materiaux M WHERE M.date BETWEEN '2021-04-12' AND '2021-04-13' AND M.id_program = 3 GROUP BY M.lot,M.id_etape )

1 réponse

Messages postés
14787
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
27 avril 2021
154
Pourquoi ne pas faire directement :
UPDATE materiaux SET clef = 'axKZn038' WHERE date BETWEEN '2021-04-12' AND '2021-04-13' AND id_program = 3 

?