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 :

SQL - SELECT exclusif par jointure


Sujet :

Langage SQL

  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2011
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Décembre 2011
    Messages : 19
    Points : 15
    Points
    15
    Par défaut SQL - SELECT exclusif par jointure
    Bonjour,

    Je tiens tout d'abord à préciser que je débute avec SQL.

    J'utilise cette architecture :

    ELEVES
    id_eleve
    nom_eleve

    LIE (Pour lier les tables ELEVES et STAGES)
    id_eleve
    id_stage

    STAGES
    id_stage
    nom_stage


    Mon but est de réussir à sélectionner tous les noms de stages pour lesquels un élève n'est pas lié.

    ex : 3 Stages Différents A,B et C
    Un élève X lié aux Stages A et B.

    Il faudra donc renvoyer le nom du stage C.

    Je me suis servi de ce tuto pour essayer différentes jointures :
    http://sqlpro.developpez.com/cours/sqlaz/jointures/

    Mais je n'arrive pas à gérer les stages NON liés.

    Merci d'avance pour tout aide x)

  2. #2
    Expert confirmé
    Avatar de pc75
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    3 662
    Détails du profil
    Informations personnelles :
    Âge : 69
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2004
    Messages : 3 662
    Points : 4 047
    Points
    4 047
    Par défaut
    Bonjour,

    Si aucun élève n'a suivi un stage donné, il n'y aura pas d'enregistrement pour ce stage dans la table LIE.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    select nom_stage from STAGES where id_stage not in (select id_stage from LIE)

  3. #3
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2011
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Décembre 2011
    Messages : 19
    Points : 15
    Points
    15
    Par défaut
    Merci pour cette réponse rapide.

    Je ne connaissais pas l'instruction NOT IN qui me sera surement utile.

    Mais enfaite il faut sélectionner les stages non liés à UN élève ; Il y aura donc plusieurs élèves ; et un autre élève pourrait avoir ce stage dans la table LIE

  4. #4
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2011
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Décembre 2011
    Messages : 19
    Points : 15
    Points
    15
    Par défaut
    Réponse trouvé ; il me suffisait d'ajouter une condition WHERE dans le NOT IN :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    SELECT nom_stage
      FROM STAGES
     WHERE id_stage NOT IN (SELECT id_stage
                              FROM LIE
                             WHERE id_eleve = XX)
    Problème résolu,
    Merci pour votre rapidité x)

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

Discussions similaires

  1. [2005] SQL: sélection d'un échantillonage par jointure
    Par winter60 dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 11/04/2014, 15h00
  2. Remplacer des select imbriqués par une jointure
    Par comode dans le forum Requêtes
    Réponses: 2
    Dernier message: 30/11/2011, 14h01
  3. Réponses: 2
    Dernier message: 26/05/2009, 14h24
  4. afficher input en fonction d'un select alimenté par sql
    Par kate59 dans le forum Général JavaScript
    Réponses: 9
    Dernier message: 04/02/2009, 09h57
  5. [SQL] SELECT jointure 7 Tables
    Par php4life dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 29/01/2007, 09h38

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