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 :

Inner Join de la même requête


Sujet :

Langage SQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre actif
    Inscrit en
    Août 2008
    Messages
    57
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 57
    Par défaut Inner Join de la même requête
    Hello,

    J'ai un petit problème avec une requête SQL sous Wordpress.
    Ma table est construire de cette façon
    meta_id post_id meta_key meta_value
    Je cherche a obtenir le résultat d'une requête qui se base elle même sur une requête (je sais pas si c'est super clair )
    Voila ma première requête:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT * FROM wp_postmeta WHERE meta_key = 'enseigne' AND meta_value=7
    J'obtiens bien ce que je veux et je veux ensuite faire une requête en me basant sur les resultats obtenu précédement (post_id)
    Voila la seconde requête
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT * FROM wp_postmeta WHERE meta_key = 'note'
    Il faudrait donc faire une selection avec comme "filtre" le post_id que j'ai obtenu précédemment…

    MErci d'avance et j'espère que j'ai réussi à me faire comprendre…

  2. #2
    Modérateur
    Avatar de escartefigue
    Homme Profil pro
    bourreau
    Inscrit en
    Mars 2010
    Messages
    10 654
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : bourreau
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2010
    Messages : 10 654
    Billets dans le blog
    10
    Par défaut
    Si votre SGBD ne connais pas les CTE, vous pouvez coder

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    select C1, C2,... Cn
    From (select Cx, Cy, ... Cz
          from ma_table
          where....)
    Sinon c'est plus simple vous codez
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    With CTE as (ma requete 1)
    Select  C1, C2,... Cn from CTE where...

  3. #3
    Membre actif
    Inscrit en
    Août 2008
    Messages
    57
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 57
    Par défaut
    Merci mais j'ai pas tout suivi…

  4. #4
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 137
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 137
    Par défaut
    Citation Envoyé par incent_bzh Voir le message
    Voila ma première requête:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT * FROM wp_postmeta WHERE meta_key = 'enseigne' AND meta_value=7
    J'obtiens bien ce que je veux et je veux ensuite faire une requête en me basant sur les resultats obtenu précédement (post_id)
    Quel post_id ? Il n'apparait pas dans la requête.
    Modérateur Langage SQL
    Règles du forum Langage SQL à lire par tous, N'hésitez pas à consulter les cours SQL
    N'oubliez pas le bouton et pensez aux balises
    [code]
    Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur
    Aide-toi et le forum t'aidera : Un problème exposé sans mentionner les tentatives de résolution infructueuses peut laisser supposer que le posteur attend qu'on fasse son travail à sa place... et ne donne pas envie d'y répondre.

  5. #5
    Membre actif
    Inscrit en
    Août 2008
    Messages
    57
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 57
    Par défaut
    Le post_id est dans la structure de ma table

  6. #6
    Modérateur
    Avatar de escartefigue
    Homme Profil pro
    bourreau
    Inscrit en
    Mars 2010
    Messages
    10 654
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : bourreau
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2010
    Messages : 10 654
    Billets dans le blog
    10
    Par défaut
    Le plus simple serait que vous présentiez un extrait de votre jeu de données et un exemple de résultat attendu

  7. #7
    Membre actif
    Inscrit en
    Août 2008
    Messages
    57
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 57
    Par défaut
    En effet ça sera plus simple

    Voila ma première requête, j'obtiens bien ce que je veux
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT * FROM wp_postmeta WHERE meta_key = 'enseigne' AND meta_value=7
    Nom : Capture d’écran 2016-01-22 à 08.06.52.png
Affichages : 173
Taille : 59,2 Ko

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SELECT * 
    FROM wp_postmeta
    WHERE meta_key =  'note'
    LIMIT 0 , 30
    et j'obtiens bien
    Nom : Capture d’écran 2016-01-22 à 08.05.05.png
Affichages : 177
Taille : 57,2 Ko

    Entre ces 2 requête, j'ai en commun le post_id (23 et 26). Je souhaite obtenir en une seule requête ce que j'obtiens dans ma requête 2

  8. #8
    Modérateur
    Avatar de escartefigue
    Homme Profil pro
    bourreau
    Inscrit en
    Mars 2010
    Messages
    10 654
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : bourreau
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2010
    Messages : 10 654
    Billets dans le blog
    10
    Par défaut
    Ok, essayez ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Select co1, col2, ... coln
    from wp_postmeta 
    where meta_key = 'note'
      and poste_id in
         (select poste_id
          from wp_postmeta 
          where meta_key = 'enseigne' 
            and meta_value=7)
    Précisez les colonnes dont vous avez besoin plutôt que select *

Discussions similaires

  1. Deux inner join sur une même table
    Par Pachina75 dans le forum Langage SQL
    Réponses: 5
    Dernier message: 04/06/2014, 15h54
  2. 3 Inner Join sur la même table
    Par Zolex dans le forum Requêtes
    Réponses: 6
    Dernier message: 23/05/2007, 13h32
  3. requête avec inner join ?
    Par Melvine dans le forum Oracle
    Réponses: 5
    Dernier message: 30/03/2006, 10h16
  4. une requête avec plusieurs INNER JOIN, cmt faire ?
    Par elhosni dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 10/01/2006, 18h55
  5. requête sql avec clause INNER JOIN
    Par new_wave dans le forum Langage SQL
    Réponses: 1
    Dernier message: 12/08/2005, 16h47

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