IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage SQL Discussion :

Select dans Select


Sujet :

Langage SQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Octobre 2005
    Messages
    273
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 273
    Par défaut Select dans Select
    Bonjour,

    Voilà mon problème. J'ai une vue qui est déjà crée. Celle-ci ressemble à qqc comme ca:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     select A.ID, B.AGE, C.SEXE, A.NOM, ...
    from A, B, C, ...
    where A.ID = B.ID, ....
    J'aimerais ensuite refaire un select sur une autre table avec une donnée de mon résult du premier select.

    Comme résultat final j'aurai donc le résultat de mon premier select + une colonne d'un deuxième.

    j'espère avoir été assez clair

    Merci pour votre aide

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    98
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 98
    Par défaut
    Euh je suis pas sur d'avoir bien compris,
    Mais tu as essaye cela:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    select X,Y,Z,(SELECT A.ID, B.AGE, C.SEXE, A.NOM, ...
    FROM A, B, C, ...
    WHERE A.ID = B.ID, ....), from FROM T1,T2
    WHERE .....
    Je pense que c'est pas cela que tu veux lol.
    Si tu peux etre plus explicite lol.

  3. #3
    Membre éclairé
    Inscrit en
    Octobre 2005
    Messages
    273
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 273
    Par défaut
    oui je pense que tu as compris ce que je voulais. Dans ta réponse, est-ce normal d'avoir 2 x from ???

    Ne manque -t -il pas des choses dans ton code?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    select X,Y,Z,(SELECT A.ID, B.AGE, C.SEXE, A.NOM, ...
    FROM A, B, C, ...
    WHERE A.ID = B.ID, ....) FROM T1,T2
    WHERE ...
    Je ne sais pas trop comment spécifier T1 qui serait le résultat de ma première requête et T2 qui serait ma table supplémentaire ...


    peux-tu être plus précis stp

    Merci

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    98
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 98
    Par défaut
    Ben T1,T2 c'est les autres tables sur lesquelles tu veux recuperer tes donnees..pour les ajouter aux données recupere dans A,B,C

    Et oui c'est normal d'avoir deux from vu que tu fait une requete imbrique.
    Sinon tu as une autre solution.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Select x from T1 where ...
     
    Union
     
    SELECT A.ID, B.AGE, C.SEXE, A.NOM, ...
    FROM A, B, C, ...
    WHERE A.ID = B.ID, ....
    Si tu vois pas ce que je veux dire, le mieux c'est que tu me disent précisemment le résultat de ta première requete avec la requete et la deuxième requete dont tu veux juxtaposer le resultat à la premiere.

  5. #5
    Membre éclairé
    Inscrit en
    Octobre 2005
    Messages
    273
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 273
    Par défaut
    OK donc voilà ce que j'aimerais:

    Disons que j'ai 5 tables A B C D E

    Ma première requête va rechercher des informations des tables A B C D.

    Ma deuxième requête consisterait à aller chercher une information se trouvant dans E avec comme critère de sélection, une information de la première requête.

    le résultat serait donc le résultat de la requête 1 + résultat requête 2

    j'espère avoir été plus clair

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    98
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 98
    Par défaut
    Alors voilà la solution
    On va dire que ta table E a comme champ a,b,c,d,e

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    select * from E where
    E.a in (select a from A) and E.b in (select b from B) and ....
    C'est bon , c'est ca que tu voulais?

    Ce n'est pas un égal qu'il faut mettre mais bien un "in".
    Tu peux egalement mettre un " not in " si ta condition dit que ce membre ne doit pas exister dans cette table.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. SELECT dans SELECT
    Par ehochedez dans le forum Développement
    Réponses: 2
    Dernier message: 07/09/2010, 04h24
  2. Select dans select
    Par bella1 dans le forum Langage SQL
    Réponses: 3
    Dernier message: 23/11/2009, 16h19
  3. Réponses: 2
    Dernier message: 10/08/2009, 09h24
  4. PB Select dans Select
    Par amel123456789 dans le forum SQLite
    Réponses: 1
    Dernier message: 03/06/2008, 16h36
  5. Requête (select dans select)
    Par zut94 dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 03/03/2006, 11h38

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo