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 :

Reqête avec LEFT JOIN


Sujet :

Requêtes MySQL

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Février 2004
    Messages
    49
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 49
    Points : 41
    Points
    41
    Par défaut Reqête avec LEFT JOIN
    Bonjour,

    Tout dernierement je suis passé sur la nouvelle version de MySQL 5 mais j'ai de petits soucis. Des requetes qui fonctionnaient ne fonctionnent plus sur la nouvelle version. Voici le type de pb que je suis confronté. J'essaie de faire une requete avec LEFT JOIN sans succès

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SELECT *
    FROM TABLE1 AS T1, TABLE AS T2
    LEFT JOIN TABLE3 AS T3 ON T2.id = T3.tableId2
    AND T1.date > T3.date
    Pouvez vous m'aider ?? Apparement c'est la condition qui merde

    Merci d'avance

  2. #2
    Membre expérimenté
    Avatar de Adjanakis
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    739
    Détails du profil
    Informations personnelles :
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations forums :
    Inscription : Avril 2004
    Messages : 739
    Points : 1 351
    Points
    1 351
    Par défaut
    Bonjour,

    As-tu essayé de mettre des parenthèses autour des 2 conditions ? Quel est exactement le message d'erreur ?

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Février 2004
    Messages
    49
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 49
    Points : 41
    Points
    41
    Par défaut
    Avec MySQL 5 il faut etre super rigoureux par exemple ce genre de requete ne fonctionne pas :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT *
    FROM TABLE1 AS T1, TABLE2 AS T2
    LEFT JOIN TABLE3 AS T3 ON T1.table3Id = T3.id
    mais celle ci oui

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT *
    FROM TABLE2 AS T2, TABLE1 AS T1
    LEFT JOIN TABLE3 AS T3 ON T1.table3Id = T3.id
    donc je pense je dois avoir le genre de pb

    tu vois le genre ??

  4. #4
    Membre expérimenté
    Avatar de Adjanakis
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    739
    Détails du profil
    Informations personnelles :
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations forums :
    Inscription : Avril 2004
    Messages : 739
    Points : 1 351
    Points
    1 351
    Par défaut
    As tu essayé de faire un INNER JOIN entre table 1 et table2 ?

  5. #5
    Rédacteur
    Avatar de pcaboche
    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    2 785
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Singapour

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 785
    Points : 9 716
    Points
    9 716
    Par défaut
    Citation Envoyé par Adjanakis
    As tu essayé de faire un INNER JOIN entre table 1 et table2 ?
    Je ne pense pas que ce soit ce dont il ait besoin: d'abord il fait un produit cartésien entre TABLE1 et TABLE2 pour avoir toutes les combinaisons possibles, ensuite le LEFT JOIN lui sort les combinaisons qui sont présentes dans TABLE3 ou NULL si la combinaison n'est pas présente.

    J'ai rencontré plusieurs fois ce type de procédé (généralement le produit cartésien ne porte que sur quelques enregistrements (voire un seul) de l'une des tables).

    Je pense donc qu'il a réellement besoin d'un LEFT JOIN et qu'il faut chercher l'erreur ailleurs. Maintenant, avec des noms comme TABLE1, TABLE2, et TABLE3, on a du mal à voir ce qu'il veux faire exactement.

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Février 2004
    Messages
    49
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 49
    Points : 41
    Points
    41
    Par défaut
    J'ai repris mes requetes avec un INNER JOIN et cela marche beaucoup mieux. Je vais essayer de me documenter pour savoir d'ou vient le problème.

    Merci encore

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

Discussions similaires

  1. [Requete] Pb avec LEFT JOIN
    Par 000 dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 09/06/2006, 00h06
  2. [Access] Requête avec LEFT JOIN et 3 tables
    Par estelledany dans le forum Langage SQL
    Réponses: 1
    Dernier message: 07/06/2006, 13h27
  3. Plantage Mysql avec LEFT JOIN
    Par verticka dans le forum Requêtes
    Réponses: 2
    Dernier message: 01/09/2005, 11h45
  4. requete avec left join et group by
    Par slc dans le forum Requêtes
    Réponses: 2
    Dernier message: 14/09/2004, 18h03
  5. Export d'une vue avec LEFT JOIN
    Par schnourf dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 22/05/2003, 13h57

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