Bonjour,

Voici mon petit souci:
J'ai trois tables, A B et C.
-La clef étrangère entre A et B est idDef.
-La clef étrangère entre B et C est idCom.

Il n'y a pas de liens direct entre A et C.

Maintenant je dois faire un update dans la table A, à partir d'une variable correspond à idCom qui est donc la clef étrangère entre B et C. Vous me suivez ?

Bien sur je peux d'abord faire une requête SQL pour récupérer l'id de A dont idDef se trouve être dans la table B liée à C depuis idCom. Mais cela fait une requête de plus, c'est dommage.

J'ai donc essayé cela :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
$update="UPDATE  `definitions` SET nbrCommentaire=nbrCommentaire+1,titre='".$titre."', date='".$date."' WHERE id=(SELECT id FROM `definitions`WHERE definitions.id=commentaire.idDef AND commentaire.id='".$idCom."')";
Comme vous pouvez le deviner, cela fonctionne à merveille.

Avez-vous mieux, à tout hasard ... ?