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 :

Aide requète sql


Sujet :

Langage SQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Août 2008
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Août 2008
    Messages : 4
    Par défaut Aide requète sql
    Bonjour à tous,

    Je viens vers vous pour une requète a mettre en place.
    Je dois rapprocher 2 tables. Mon pb n'est pas sur le rapprochement avec les 2tables. Mais sur la gestion d'un champ de la table qui fait référence à un groupe de ligne du champ 3.

    Table 1
    champ 1 - Clé primaire
    champ 2
    champ 3 (quand celui ci est renseigné il fait référence à un groupe de ligne du champ 2)
    champ 4

    comment dois je procéder pour récuperer l'ensemble des champs 2(comprenant les champs 2 référencé par le champ 3)?

    Merci de votre aide
    olivier.

  2. #2
    Modérateur
    Avatar de Chtulus
    Homme Profil pro
    Ingénieur
    Inscrit en
    Avril 2008
    Messages
    3 094
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Santé

    Informations forums :
    Inscription : Avril 2008
    Messages : 3 094
    Par défaut
    Bonsoir,

    quand celui ci est renseigné il fait référence à un groupe de ligne du champ 2
    Tu pourrais étayer par un exemple ?
    « Je ne cherche pas à connaître les réponses, je cherche à comprendre les questions. »
    - Confucius -

    Les meilleurs cours, tutoriels et Docs sur les SGBD et le SQL
    Tous les cours Office
    Solutions d'Entreprise



  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Août 2008
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Août 2008
    Messages : 4
    Par défaut
    Voici un exemple, je prends le miens bien sure..

    J'ai une table avec des pool(groupe de droits)

    pool_idt pool_prim pool_second pool_droit
    1 2 1035
    2 2 1046
    3 2 29
    4 8 1050
    5 12 1060
    6 20 1080
    7 29 2012
    8 29 2013
    9 30 2040

    Mon objectif est de ressortir les lignes avec le pool_idt à 1,2,7 et 8
    pool_idt pool_prim pool_second pool_droit
    1 2 1035
    2 2 1046
    7 29 2012
    8 29 2013

    Merci pour votre aide

    olivier.

  4. #4
    Modérateur
    Avatar de Chtulus
    Homme Profil pro
    Ingénieur
    Inscrit en
    Avril 2008
    Messages
    3 094
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Santé

    Informations forums :
    Inscription : Avril 2008
    Messages : 3 094
    Par défaut
    Oui mais tu as 4 colonnes et 3 dans le résultat, ça va être dur...

    « Je ne cherche pas à connaître les réponses, je cherche à comprendre les questions. »
    - Confucius -

    Les meilleurs cours, tutoriels et Docs sur les SGBD et le SQL
    Tous les cours Office
    Solutions d'Entreprise



  5. #5
    Membre Expert Avatar de lola06
    Femme Profil pro
    Consultante en Business Intelligence
    Inscrit en
    Avril 2007
    Messages
    1 316
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 38
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Consultante en Business Intelligence
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 316
    Par défaut
    Salut,

    si on suppose que tu n'as que trois colonnes alors pour obtenir le résultat il faut faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT pool_idt, pool_prim, pool_second
    FROM MaTable
    WHERE pool_idt = 1 OR pool_idt = 2 OR pool_idt = 7 OR pool_idt = 8
    A moins que ces 4 lignes aient un point en commun que je n'aurais pas vu ?

    Citation Envoyé par olivier7359 Voir le message
    Mon objectif est de ressortir les lignes avec le pool_idt à 1,2,7 et 8
    pool_idt pool_prim pool_second pool_droit
    1 2 1035
    2 2 1046
    7 29 2012
    8 29 2013
    A+

  6. #6
    Futur Membre du Club
    Profil pro
    Inscrit en
    Août 2008
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Août 2008
    Messages : 4
    Par défaut
    Désolé Lola, ma pb est plus compliqué que ça.

    Je reprends donc l’exemple…

    J'ai ma table avec des pool(groupe de droits)

    pool_idt pool_prim pool_second pool_droit
    1 2 NULL 1035
    2 2 NULL 1046
    3 2 29 NULL
    4 8 NULL 1050
    5 12 NULL 1060
    6 20 NULL 1080
    7 29 NULL 2012
    8 29 NULL 2013
    9 30 NULL 2040

    J’aimerai ressortir l’ensemble des droits pour le pool_prim=2. En lisant la ligne pool_idt=3, le pool_prim=2, reprend aussi les droits du pool 29.

    L’objectif est de ressortir en résultat les lignes des pool_idt à 1,2,7 et 8
    pool_idt pool_prim pool_second pool_droit
    1 2 NULL 1035
    2 2 NULL 1046
    7 29 NULL 2012
    8 29 NULL 2013

    Merci pour l’aide

    olivier.

  7. #7
    Membre Expert Avatar de lola06
    Femme Profil pro
    Consultante en Business Intelligence
    Inscrit en
    Avril 2007
    Messages
    1 316
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 38
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Consultante en Business Intelligence
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 316
    Par défaut
    OK, déjà on comprend mieux comme ça, parce qu'avec ton exemple précédent ce n'est pas du tout ça.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SELECT pool_idt, pool_prim, pool_second, droit
    FROM MaTable
    WHERE pool_prim = 2 OR pool_prim in (SELECT pool_second 
    FROM MaTable WHERE pool_prim = 2 AND pool_second <> null)
    Et ça est ce que c'est bon ?

  8. #8
    Membre Expert Avatar de pacmann
    Homme Profil pro
    Consulté Oracle
    Inscrit en
    Juin 2004
    Messages
    1 626
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Consulté Oracle
    Secteur : Distribution

    Informations forums :
    Inscription : Juin 2004
    Messages : 1 626
    Par défaut
    Salut !

    Citation Envoyé par olivier7359 Voir le message
    J’aimerai ressortir l’ensemble des droits pour le pool_prim=2. En lisant la ligne pool_idt=3, le pool_prim=2, reprend aussi les droits du pool 29.

    L’objectif est de ressortir en résultat les lignes des pool_idt à 1,2,7 et 8
    pool_idt pool_prim pool_second pool_droit
    Juste par curiosité : pourquoi le 3 n'en fait par partie ?
    (Chuis un peu long à la détente...)

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

Discussions similaires

  1. Réponses: 4
    Dernier message: 13/11/2007, 22h23
  2. Aide Requête SQL
    Par jjg65 dans le forum Langage SQL
    Réponses: 5
    Dernier message: 26/07/2007, 10h37
  3. Aide requête SQL - UPDATE phpmyadmin
    Par laulau37 dans le forum Langage SQL
    Réponses: 2
    Dernier message: 20/06/2007, 10h19
  4. Aide requête sql
    Par viny dans le forum PostgreSQL
    Réponses: 18
    Dernier message: 14/09/2006, 21h31
  5. Aide Requête SQL (UPDATE)
    Par Glowprod dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 26/07/2006, 14h04

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