Page 1 sur 1

Requete SQL _ idref, id

Posté : 09 oct. 2009, 10:42
par kattig
Bonjour,

Je ne sais pas si je suis sur le bon forum mais.. je me lance:

Je vous explique déjà le contexte:

On a deux tables:

Maitre Chien
___________________________ _____________________________
|idmaitre|nom | age | .... | |idchien | Nom | .... | aUnProprio|
T-----------------------------------| |-----------------------------------------|

Et on a une table de liaison :

Map
_________________
|idchien |idmaitre|
-----------------------

Ce que j'aimerais faire, c'est modifié le champ "aUnProprio" de la table "chien" en fonction de la table Map sachant que:
- Je ne connais que idmaitre
- plusieurs chiens peuvent avoir un même maitre...

J'ai fais plusieurs tests comme:
Update chien
Set aUnProprio = 1
From chien
INNER Join map On map.idchien = chien.id chien

Cependant, je me rend compte que ce n'est pas ca...
Si vous avez une idée, ce serait gentille à vous de me le faire part...

Re: Requete SQL _ idref, id

Posté : 09 oct. 2009, 10:45
par kattig
Je me suis rendue compte que les deux tables étaient invisibles, les voici:

maitre
________________________
|idmaitre|nom | age | .... |

chien
______________________________
|idchien | Nom | .... | aUnProprio|

Voila!

Solution trouvée

Posté : 09 oct. 2009, 11:19
par kattig
Re-bonjour,

J'ai trouvé la solution! Grâce à un exemple d'un livre, cela m'a donné la solution:

Update chien
Set aUnProprio = 1
WHERE idchien = (SELECT idchien from map where idmaitre = @idmaitre)

Voila! Cela me parait évident à présent...

Re: Requete SQL _ idref, id

Posté : 09 oct. 2009, 11:37
par katig
Heu....

Je me suis un peu trop précipitée pour dire que c'est résolu... Car, il ne prend qu'une seule valeur...

Code : Tout sélectionner

WHERE idchien = (SELECT idchien from map where idmaitre = @idmaitre)
Alors que je voudrais faire en sorte que cela update toutes les lignes dans la condition est vérifiée...

De l'aide?

Re: Requete SQL _ idref, id

Posté : 09 oct. 2009, 11:50
par kattig
Cette fois c'est réellement résolu.. Il fallait mettre "IN" au lieu de "="...

A+

PS: J'ai l'impression de faire un monologue là...

Re: Requete SQL _ idref, id

Posté : 09 oct. 2009, 13:44
par furiouslol
Salut,

C'est vrai que t'as été rapide la :wink: