Précédent   Forum des professionnels en informatique > Bases de données > Décisions SGBD
Décisions SGBD Forum de décisions sur le choix en bases de données. Le Comparatif
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 14/06/2005, 10h41   #1
Membre actif
 
Avatar de copin
 
Inscription : mai 2005
Messages : 205
Détails du profil
Informations personnelles :
Âge : 29

Informations forums :
Inscription : mai 2005
Messages : 205
Points : 151
Points : 151
Par défaut requete

Salut j'ai une requete qui me pose probleme!

J'ai deux tables catalogue et categorie!

catalogue{ id_formation, nom_formation, id_domaine}
categirie{id_formation,id_type_formation}

Je recupere deux variable id_type_formation et id_domaine avec ces deux variables je veux:
le nom des formations qui appartiennent aux type de formation correspondant à ma premiere variable id_type_formation et appartenant aussi au domaine correspondant à ma deuxieme variable id_domaine:

J'ai tenter une requete mais j'ai du faire une erreur:

Code :
1
2
3
4
5
6
7
8
 
SELECT catalogue.nom_formation
FROM catalogue
WHERE catalogue.id_domaine="deuxieme varable"
           IN ( SELECT categorie.id_formation
           FROM categorie
           WHERE categorie.id_type_formation='premiere variable'
);
Je me suis planté ou?

D'avance merci
copin est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/06/2005, 10h50   #2
Membre éclairé
 
Inscription : mars 2004
Messages : 425
Détails du profil
Informations forums :
Inscription : mars 2004
Messages : 425
Points : 300
Points : 300
Envoyer un message via MSN à annedjomo Envoyer un message via Yahoo à annedjomo
Essaies ceci
Code :
1
2
3
4
5
6
SELECT catalogue.nom_formation 
FROM catalogue 
WHERE catalogue.id_domaine="deuxieme varable" AND catalogue.id_domaine IN ( SELECT categorie.id_formation 
           FROM categorie 
           WHERE categorie.id_type_formation='premiere variable' 
)
__________________
OS:Win 2000 Pro, WIN XP
SGBD: MS Sql Server, Oracle
Environnement: VS.NET 2002, JBuilder
Web: www.ndestudents.com
annedjomo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/06/2005, 11h50   #3
Inactif
 
Avatar de Médiat
 
Inscription : décembre 2003
Messages : 1 946
Détails du profil
Informations forums :
Inscription : décembre 2003
Messages : 1 946
Points : 1 932
Points : 1 932
annedjomo a fait une petite faute de frappe me semble-t-il :
Code :
1
2
3
4
5
6
SELECT catalogue.nom_formation 
FROM catalogue 
WHERE catalogue.id_domaine="deuxieme varable" AND catalogue.id_formation IN ( SELECT categorie.id_formation 
           FROM categorie 
           WHERE categorie.id_type_formation='premiere variable' 
)
Tu as aussi la possibilité de faire une jointure (sans doute plus performante ):

Code :
1
2
3
4
SELECT nom_formation 
FROM catalogue INNER JOIN categorie USING (id_formation)
WHERE id_domaine        = 'deuxieme varable'
  AND id_type_formation = 'premiere variable'
Médiat est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/06/2005, 12h10   #4
Membre éclairé
 
Inscription : mars 2004
Messages : 425
Détails du profil
Informations forums :
Inscription : mars 2004
Messages : 425
Points : 300
Points : 300
Envoyer un message via MSN à annedjomo Envoyer un message via Yahoo à annedjomo
Citation:
Envoyé par pgibone
annedjomo a fait une petite faute de frappe me semble-t-il :
Code :
1
2
3
4
5
6
SELECT catalogue.nom_formation 
FROM catalogue 
WHERE catalogue.id_domaine="deuxieme varable" AND catalogue.id_formation IN ( SELECT categorie.id_formation 
           FROM categorie 
           WHERE categorie.id_type_formation='premiere variable' 
)
Tu as aussi la possibilité de faire une jointure (sans doute plus performante ):

Code :
1
2
3
4
SELECT nom_formation 
FROM catalogue INNER JOIN categorie USING (id_formation)
WHERE id_domaine        = 'deuxieme varable'
  AND id_type_formation = 'premiere variable'
J'ai peut être pas bien regardé parce que je ne vois pas où se trouve la faute de frappe.

merci de m'éclairer
__________________
OS:Win 2000 Pro, WIN XP
SGBD: MS Sql Server, Oracle
Environnement: VS.NET 2002, JBuilder
Web: www.ndestudents.com
annedjomo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/06/2005, 12h47   #5
Inactif
 
Avatar de Médiat
 
Inscription : décembre 2003
Messages : 1 946
Détails du profil
Informations forums :
Inscription : décembre 2003
Messages : 1 946
Points : 1 932
Points : 1 932
Tu as écrit :
Code :
AND catalogue.id_domaine IN ( SELECT categorie.id_formation ...
au lieu de
Code :
AND catalogue.id_formation IN ( SELECT categorie.id_formation ...
Médiat est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/06/2005, 12h51   #6
Membre éclairé
 
Inscription : mars 2004
Messages : 425
Détails du profil
Informations forums :
Inscription : mars 2004
Messages : 425
Points : 300
Points : 300
Envoyer un message via MSN à annedjomo Envoyer un message via Yahoo à annedjomo
Citation:
Envoyé par pgibone
Tu as écrit :
Code :
AND catalogue.id_domaine IN ( SELECT categorie.id_formation ...
au lieu de
Code :
AND catalogue.id_formation IN ( SELECT categorie.id_formation ...
OK

Merci pour la remarque.

Au fait où est passé l'auteur du message?
__________________
OS:Win 2000 Pro, WIN XP
SGBD: MS Sql Server, Oracle
Environnement: VS.NET 2002, JBuilder
Web: www.ndestudents.com
annedjomo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/06/2005, 13h48   #7
Membre actif
 
Avatar de copin
 
Inscription : mai 2005
Messages : 205
Détails du profil
Informations personnelles :
Âge : 29

Informations forums :
Inscription : mai 2005
Messages : 205
Points : 151
Points : 151
je suis la!
Désolé! J'étais sur une autre partie de mon code qui me pose probleme!!

Merci du coup de main!
copin est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 09h46.


 
 
 
 
Partenaires

Hébergement Web