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

Requêtes MySQL Discussion :

récupération des id non présente dans une CIF


Sujet :

Requêtes MySQL

  1. #1
    Membre régulier
    Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    141
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 141
    Points : 79
    Points
    79
    Par défaut récupération des id non présente dans une CIF
    bonjour,

    j'aimerais savoir quels sont les utilisateurs n'ayant pas été parrainé.
    voici mes tables:
    1. utilisateur(id_utilisateur,...)
    2. parrainage(idparrain_parrainage, idfilleul_parrainage, ...)
    parrainage est uen table de contrainte d'intégrité fonctionnelle, idparrain et id filleul sont des clés étrangères d'utilisateur.

    ce que je veux savoir c'est quel sont les utilisateurs qui ne sont pas filleul d'un utilisateur ou aussi qui n'ont pas de parrain(meme chose mais sous une autre formulation)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    select * 
    from utilisateur, parrainage
    where utilisateur.id_utilisateur= utilisateur.utilisateur_parrainage
    avec cette requete, j'obtiens les utilisateurs qui sont filleul d'un autre utilisateur.
    j'ai voulu faire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    select * 
    from utilisateur, parrainage
    where utilisateur.id_utilisateur= utilisateur.utilisateur_parrainage
    AND utilisateur.id_utilisateur not in utilisateur.utilisateur_parrainage
    ou
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    select * 
    from utilisateur, parrainage
    where utilisateur.id_utilisateur not in utilisateur.utilisateur_parrainage
    mais ca passe pas

    merci pour votre aide

  2. #2
    Expert confirmé Avatar de Cybher
    Homme Profil pro
    Consultant réseaux et sécurité
    Inscrit en
    Mai 2005
    Messages
    3 281
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Consultant réseaux et sécurité
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 281
    Points : 4 644
    Points
    4 644
    Par défaut
    salut

    peut etre ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    select * from utilisateur where id_utilisateur
    not in (select idfilleul_parrainage from parrainage

  3. #3
    Membre régulier
    Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    141
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 141
    Points : 79
    Points
    79
    Par défaut
    j'utilise la version 4.0.1.3 de MySQL et je peux pas faire autrement que de me passer de requete imbriqué

  4. #4
    Expert confirmé Avatar de Cybher
    Homme Profil pro
    Consultant réseaux et sécurité
    Inscrit en
    Mai 2005
    Messages
    3 281
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Consultant réseaux et sécurité
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 281
    Points : 4 644
    Points
    4 644
    Par défaut
    sans connaitre la version je ne pouvais pas deviner ...

    peut etre ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    SELECT utilisateur.id_utilisateur FROM utilisateur LEFT JOIN parrainage
    ON utilisateur.id_utilisateur=parrainage.idfilleul_parrainage
    WHERE parrainage.idfilleul_parrainage IS NULL

  5. #5
    Membre régulier
    Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    141
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 141
    Points : 79
    Points
    79
    Par défaut
    désolé c'est un oublie, c'est une chose que j'aurais du préciser

    ca fonction merci

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 11/05/2009, 09h36
  2. Réponses: 5
    Dernier message: 19/02/2009, 17h00
  3. Réponses: 1
    Dernier message: 03/01/2009, 19h30
  4. Récupérer des lignes non enregistrées dans une table
    Par leddy dans le forum Langage SQL
    Réponses: 2
    Dernier message: 24/04/2008, 15h09
  5. récupération des message d'erreurs dans une jsp
    Par clement42 dans le forum Struts 1
    Réponses: 17
    Dernier message: 23/10/2006, 11h59

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