Bonjour,

J'ai un soucis MySQL

Je dois faire un SELECT qui me retourne une ou plusieurs lignes.

Si il n'y a qu'une seule ligne, je dois faire un UPDATE d'un champ d'une autre table.

Si il y en a plusieurs, je dois faire un UPDATE pour le premier résultat et un INSERT pour les autres en dupliquant la ligne de l'UPDATE.


Pour l'instant, si je fais :

UPDATE ...
SET ... = (
SELECT ...
)

ca marche dans le cas où il y a un résultat sinon "Subquery returns more than 1 row"


Si je fais un

INSERT
... ON DUPLICATE KEY UPDATE

ça ne peut pas marcher car ça n'intervient pas sur la clé primaire


Quelqu'un a-t-il une solution ?


Merci d'avance