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

PHP & Base de données Discussion :

left outer join [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    512
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Indre et Loire (Centre)

    Informations forums :
    Inscription : Juin 2007
    Messages : 512
    Par défaut left outer join
    j'ai une requete SQL qui fait apelle à 7tables.Dans le from je doit faire 1 inner join et 5 left join puisque je souhaite quelle maffiche tout même si des lignes sont vides
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     $Req = " Select zppaup.NumZPPAUP,ExemplaireZPPAUP,NomCommune,Departement,Insee,Pluricommunale,SuperficieCne,SuperficieZPPAUP,Intitule,Typologie,Population,ChargeEtude,Commentaires,Situation,DateDelibEtude,";
    $Req = $Req."ConvMairie ,ConvEtat , DateArreteSubv,DateDelibAvisProjet, CRPS1 ,AvisCRPS1,DateDelibCRPS1,DateArreteEP ,DateDebutEP,DateFinEP,";
    $Req = $Req."Conclu,DateDelibEP,AvisABF, AvisDRAC, AvisDIREN , AvisDDE ,Synthese ,CRPS2 ,AvisCRPS2 , DateDelibApprob1 ,DateArreteCreation,";
    $Req = $Req."ConvMairie ,ConvEtat , DateArreteSubv,DateDelibAvisProjet, CRPS1 ,AvisCRPS1,DateDelibCRPS1,DateArreteEP ,DateDebutEP,DateFinEP,";
    $Req = $Req."Conclu,DateDelibEP,AvisABF, AvisDRAC, AvisDIREN , AvisDDE ,Synthese ,CRPS2 ,AvisCRPS2 , DateDelibApprob1 ,DateArreteCreation, MiseAJourFiche,Count(NumRecours)As Nbrecours,Count(NumModif) As NbModif,Count(NumRevision) As NbRevision ";
    $Req = $Req."AnneeFin,PartEtat,MtEtat,PartCommune,MtCommune,MtTotal,ComplementFin ";
    $Req = $Req."From (commune INNER JOIN concerner On concerner.NumCommune=commune.NumCommune) LEFT OUTER JOIN concerner On zppaup.NumZPPAUP=concerner.NumZPPAUP LEFT OUTER JOIN revision On revision.NumZPPAUP=zppaup.NumZPPAUP ";
    $Req = $Req."LEFT OUTER JOIN recours On recours.NumZPPAUP=zppaup.NumZPPAUP LEFT OUTER JOIN modification On modification.NumZPPAUP=zppaup.NumModification LEFT OUTER JOIN financement On financement.NumZPPAUP=zppaup.NumZPPAUP ";
    $Req = $Req."WHERE zppaup.NumZPPAUP=".$NumZPPAUP
    Vu la complexité de la requete j'espère que quelqu'un pour malgré tout m'aider

  2. #2
    Membre chevronné Avatar de Asmodean
    Profil pro
    Inscrit en
    Février 2006
    Messages
    311
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 311
    Par défaut
    Il y a une erreur dans la requête?

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    512
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Indre et Loire (Centre)

    Informations forums :
    Inscription : Juin 2007
    Messages : 512
    Par défaut
    ben a vrai dire ma requete ne me retourne rien...alors est-ce qu'on peut faire inner join et left join ds la mê me requete?

  4. #4
    Membre chevronné Avatar de Asmodean
    Profil pro
    Inscrit en
    Février 2006
    Messages
    311
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 311
    Par défaut
    Oui bien sur...

    Et si tu affiche ta requête et que tu l'éxécute sur phpMyAdmin (ou une interface de genre) ça donne quoi?

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    512
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Indre et Loire (Centre)

    Informations forums :
    Inscription : Juin 2007
    Messages : 512
    Par défaut
    sous mysql ça fonctionne mais lorsque je le fait ac php sa ne marche plus...

  6. #6
    Membre chevronné Avatar de Asmodean
    Profil pro
    Inscrit en
    Février 2006
    Messages
    311
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 311
    Par défaut
    Et si au moment d'utiliser mysql_query sous php tu faisait :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mysql_query($Req) or die(mysql_error());
    Ca affiche quelque chose?

  7. #7
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    512
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Indre et Loire (Centre)

    Informations forums :
    Inscription : Juin 2007
    Messages : 512
    Par défaut
    c'est dans mon group by qu'il y a une erreur apparament

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $Req = $Req."WHERE zppaup.NumZPPAUP=".$NumZPPAUP;
    $Req = $Req."GROUP BY".$NumZPPAUP;
    voici l'erreur
    Erreur de syntaxe près de 'BY1' à la ligne 1

  8. #8
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    512
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Indre et Loire (Centre)

    Informations forums :
    Inscription : Juin 2007
    Messages : 512
    Par défaut
    j'ai changé mon code puisque sa serait pluto ça
    et ça me met
    Erreur de syntaxe près de 'BY NumZPPAUP' à la ligne 1

  9. #9
    Membre Expert
    Inscrit en
    Janvier 2005
    Messages
    2 291
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 291
    Par défaut
    il faut penser a mettre un espace apres le BY (et avant le group) entre tes deux " ", sinon tu te retrouves avec GROUP BYNumZPPAUP

  10. #10
    Membre chevronné Avatar de Asmodean
    Profil pro
    Inscrit en
    Février 2006
    Messages
    311
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 311
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $Req = $Req."WHERE zppaup.NumZPPAUP=".$NumZPPAUP;
    $Req = $Req."GROUP BY".$NumZPPAUP;
    Koopajah a raison... Et il faut aussi un espace avant le group by (ou après la variable $NumZPPAUP si tu veux ^^

  11. #11
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    512
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Indre et Loire (Centre)

    Informations forums :
    Inscription : Juin 2007
    Messages : 512
    Par défaut
    même avec des espaces sa ne marche pas

  12. #12
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    512
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Indre et Loire (Centre)

    Informations forums :
    Inscription : Juin 2007
    Messages : 512
    Par défaut
    si c'est bon j'avias pas mis l'espace ou il fallait
    merci beaucoup

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

Discussions similaires

  1. Probleme de NULL avec LEFT OUTER JOIN
    Par jiluc dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 12/01/2006, 14h42
  2. Bug LEFT OUTER JOIN Firebird
    Par Fabio2000 dans le forum SQL
    Réponses: 3
    Dernier message: 21/11/2005, 09h08
  3. Problème avec left outer join
    Par jgfa9 dans le forum Requêtes
    Réponses: 1
    Dernier message: 22/08/2005, 21h07
  4. Problème de performance avec LEFT OUTER JOIN
    Par jgfa9 dans le forum Requêtes
    Réponses: 6
    Dernier message: 17/07/2005, 13h17
  5. concatenation de chaine dans un left outer join
    Par the_edge dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 11/11/2004, 16h08

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