Besoin d'aide jointure

Besoin d'aide jointure - SQL/NoSQL - Programmation

Marsh Posté le 27-09-2012 à 16:56:32    

Bonjour,
 
Je cherche a recuperer l'ID_BUNDLE a partir de ID_CODE avec un structure de tables en cascade
 
table CODE avec les champs ID_CODE
table CAMPAIGN avec les champs ID_CAMPAIGN et ID_CODE
table USER avec les champs ID_USER et ID_CAMPAIGN
ACCOUNT avec les champs ID_CAMPAING et ID_BUNDLE
 
Comment faire la requete SQL et recuperer le resultat ?
 
Merci de votre aide
 

Reply

Marsh Posté le 27-09-2012 à 16:56:32   

Reply

Marsh Posté le 27-09-2012 à 20:06:08    

De façon "brute" :
select ID_BUNDLE
from ACCOUNT join CAMPAIGN using(ID_CAMPAIGN)
where ID_CODE='le code duquel tu pars'


---------------
Doucement le matin, pas trop vite le soir.
Reply

Marsh Posté le 28-09-2012 à 13:09:26    

select ID_BUNDLE  
FROM CODE inner join CAMPAIGN  on CAMPAIGN.ID_CODE = CODE.ID_CODE
inner join  ACCOUNT.ID_CAMPAING = CAMPAIGN.ID_CAMPAING
WHERE CAMPAIGN.ID_CODE = XX
 
si au dessus ça marche pas  
je connais pas le using je vois pas la puissance du truc un cours sous la main ?

Reply

Marsh Posté le 28-09-2012 à 14:09:58    

C'est un raccourci avec Oracle quand la colonne a le même nom dans les 2 tables. Ecrire "from a join b using(toto)" équivaut à "from a join b on (a.toto=b.toto).
Et dans le reste de la requête, comme on fixe le fait que cette colonne a la même valeur dans les 2 tables, il n'y a plus les colonnes "a.toto" et "b.toto" mais une seule pseudo-colonne "toto".
 
Bref, rien de fondamental mais je trouve que ça participe à faciliter la lisibilité de la requête :)  
(mais je ne sais pas dans quelle mesure c'est valable avec d'autres SGBD)


Message édité par mrbebert le 28-09-2012 à 14:11:15

---------------
Doucement le matin, pas trop vite le soir.
Reply

Marsh Posté le 28-09-2012 à 14:25:05    

Ok connait pas je suis sous sql serveur

Reply

Marsh Posté le 01-10-2012 à 16:23:04    

Merci de vos réponses, j'ai réussi.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed