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 :

select si l'id n'appartient pas à table 2


Sujet :

Requêtes MySQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Septembre 2004
    Messages
    387
    Détails du profil
    Informations forums :
    Inscription : Septembre 2004
    Messages : 387
    Par défaut select si l'id n'appartient pas à table 2
    Bonjour à tous,

    Désolé pour le titre pas très explicite.

    Voilà sois Trois table contenant tout une colonne products_id.

    Je cherche à faire un requete de tous les products_id qui n'apparaissent pas dans une des tables
    Donc sur deux tables ca donne ceci, et ca fonctionne:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    select distinct products_id,products_quantity
    from " . TABLE_PRODUCTS . " 
    where (products_id NOT IN (select products_id from ".TABLE_PRODUCTS_TO_CLASSIFICATION."))
    Désormais j'aimerais le faire sur les trois table,
    t1.products_id = t2.products_id et n'appartient pas à la 3ème table.
    j'ai donc essayer ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    SELECT p.products_id, pd.products_name
    FROM products p
    LEFT JOIN products_description pd ON pd.products_id = p.products_id
    WHERE (
    p.products_id NOT
    IN (SELECT products_id FROM products_to_classification)
    )
    LIMIT 0 , 30
    ca me revois bien les bon products_id mais pas le product_name.?

    Merci à vous

  2. #2
    Membre Expert
    Avatar de gene69
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 769
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 769
    Par défaut
    normal, s'il sont à null, c'est qu'aucune correspondance a été trouvée. Fait un inner join pour n'avoir les produits qui sont dans les deux premieres tables.

    "inner join" jointure naturelle.

  3. #3
    Membre éclairé
    Inscrit en
    Septembre 2004
    Messages
    387
    Détails du profil
    Informations forums :
    Inscription : Septembre 2004
    Messages : 387
    Par défaut Je suis un boulet
    Je te remercie.

    J'avais bien tester le inner, mais ca m'avais renvoyé aucun résultat.

    Etant donnée que cette requête sert à vérifier, les erreurs de qualif. dans ma table, que j'étais sure d'en avoir, je me suis dis que si il y a avais pas résultat c'est que la requête etait mauvaise.

    Après vérification:
    Les bonne nouvelle c'est que j'arrive faire une jointure correcte, que j'ai pas d'erreur dans ma table.
    La mauvaise c'est que je suis un boulet et ne vérifie pas dans ma table si les résultat sont correct, avant de demander à l'aide pour une requête.

    Merci

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

Discussions similaires

  1. Réponses: 8
    Dernier message: 24/08/2015, 18h52
  2. l'indice n'appartient pas a la selection
    Par nsqualli dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 03/12/2008, 11h04
  3. L'indice n'appartient pas à la selection (Close)
    Par Elijah37 dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 31/07/2008, 14h37
  4. l indice n appartient pas a la selection
    Par manphenix dans le forum Macros et VBA Excel
    Réponses: 11
    Dernier message: 21/07/2008, 08h36
  5. VBNet BDD Pb : le champ n'appartient pas à la table
    Par patdan dans le forum Windows Forms
    Réponses: 2
    Dernier message: 27/12/2007, 21h29

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