Bonjour,
J'ai un problème avec une requête :
La requête fait un update sur tout le champ nom :cry:Code:
1
2
3
4 UPDATE personne1 P1 SET nom = (SELECT nom FROM personne2 P2 WHERE P1.id = P2.identificateur);
Merci d'avance.
Version imprimable
Bonjour,
J'ai un problème avec une requête :
La requête fait un update sur tout le champ nom :cry:Code:
1
2
3
4 UPDATE personne1 P1 SET nom = (SELECT nom FROM personne2 P2 WHERE P1.id = P2.identificateur);
Merci d'avance.
Votre description du problème étant plutôt imprécise, cette solution peut fonctionner ou peut ne pas fonctionner :
Code:
1
2
3
4
5
6
7 UPDATE personne1 P1 SET nom = (SELECT nom FROM personne2 P2 WHERE P1.id = P2.identificateur) WHERE EXISTS (SELECT NULL FROM personne2 P2 WHERE P1.id = P2.identificateur);
Ben oui il faut ajouter un WHERE à ton update pour qu'il ne se limite uniquement qu'au row que tu veux mettre à jour :
Code:
1
2
3
4 UPDATE personne1 P1 SET nom = (SELECT nom FROM personne2 P2 WHERE P1.id=P2.identificateur) WHERE p1.colonne = valeur;
Diplomegalo