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 :

Erreur de synthax d'une requête


Sujet :

Requêtes MySQL

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Septembre 2006
    Messages : 4
    Points : 2
    Points
    2
    Par défaut Erreur de synthax d'une requête
    Bonjour,
    J'avais cette requête qui fonctionnez très bien avant et maintenant qui ne fonctionne plus apparement une mise à jour de mysql version 4.1.20 et avant 4.1.13:
    SELECT J.Jou_Nom, J.Jou_Prenom, B.nb_buts
    FROM joueurs J
    LEFT JOIN
    ((
    SELECT Jou_IDE, COUNT(*) AS nb_buts
    FROM buts
    JOIN matchs ON buts.Mat_IDE=matchs.Mat_ID
    WHERE matchs.Sai_IDE=' .$saisonsid. '
    GROUP BY Jou_IDE
    ) AS B) ON J.Jou_ID=B.Jou_IDE
    WHERE J.Pos_IDE <> 3 AND J.Jou_Actif = 1 ORDER BY B.nb_buts DESC, J.Jou_Nom ASC LIMIT 0, 3

    Voici l'erreur:
    You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'AS B) ON J.Jou_ID=B.Jou_IDE WHERE J.Pos_IDE <> 3 AND J.Jou_Actif = 1 ORDE' at line 10

    Merci d'avance
    Nils

  2. #2
    Rédacteur

    Avatar de zoom61
    Homme Profil pro
    ...
    Inscrit en
    Janvier 2005
    Messages
    9 429
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Vienne (Limousin)

    Informations professionnelles :
    Activité : ...
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2005
    Messages : 9 429
    Points : 58 222
    Points
    58 222
    Billets dans le blog
    11
    Par défaut
    Tu devrais essayer avec des espaces avant et après les "=", j'ai déjà eu ce problème et avec les espaces cela fonctionne.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    SELECT J.Jou_Nom, J.Jou_Prenom, B.nb_buts
    FROM joueurs J
    LEFT JOIN
    ((
    SELECT Jou_IDE, COUNT(*) AS nb_buts
    FROM buts
    JOIN matchs ON buts.Mat_IDE = matchs.Mat_ID
    WHERE matchs.Sai_IDE = ' .$saisonsid. '
    GROUP BY Jou_IDE
    ) AS B) ON J.Jou_ID = B.Jou_IDE 
    WHERE J.Pos_IDE <> 3 AND J.Jou_Actif = 1 ORDER BY B.nb_buts DESC, J.Jou_Nom ASC LIMIT 0, 3

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Septembre 2006
    Messages : 4
    Points : 2
    Points
    2
    Par défaut Ne marche pas
    Bonjour,
    Malheureusement ce n'est pas ca.
    Merci quand même.

    Nils

  4. #4
    Rédacteur

    Avatar de zoom61
    Homme Profil pro
    ...
    Inscrit en
    Janvier 2005
    Messages
    9 429
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Vienne (Limousin)

    Informations professionnelles :
    Activité : ...
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2005
    Messages : 9 429
    Points : 58 222
    Points
    58 222
    Billets dans le blog
    11
    Par défaut
    As tu essayé comme cela :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    SELECT J.Jou_Nom, J.Jou_Prenom, B.nb_buts
    FROM joueurs J
    LEFT JOIN
    ((
    SELECT Jou_IDE, COUNT(*) AS nb_buts
    FROM buts
    JOIN matchs ON buts.Mat_IDE = matchs.Mat_ID
    WHERE matchs.Sai_IDE = '$saisonsid'
    GROUP BY Jou_IDE
    ) AS B) ON J.Jou_ID = B.Jou_IDE 
    WHERE J.Pos_IDE <> 3 AND J.Jou_Actif = 1 ORDER BY B.nb_buts DESC, J.Jou_Nom ASC LIMIT 0, 3

  5. #5
    Candidat au Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Septembre 2006
    Messages : 4
    Points : 2
    Points
    2
    Par défaut Non toujours erreur de synthax
    Bonjour,

    L'erreur vient réellement de la synthax et je ne sais pas pourquoi avant cela marchait et maintenant plus qu'est ce qui a changé avec la nouvelle version de mysql.

    Merci
    Nils

  6. #6
    Rédacteur

    Avatar de zoom61
    Homme Profil pro
    ...
    Inscrit en
    Janvier 2005
    Messages
    9 429
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Vienne (Limousin)

    Informations professionnelles :
    Activité : ...
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2005
    Messages : 9 429
    Points : 58 222
    Points
    58 222
    Billets dans le blog
    11
    Par défaut
    As-tu essayé de faire fonctionner la requête toute seule :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    SELECT Jou_IDE, COUNT(*) AS nb_buts
    FROM buts
    JOIN matchs ON buts.Mat_IDE = matchs.Mat_ID
    WHERE matchs.Sai_IDE = '$saisonsid'
    GROUP BY Jou_IDE

  7. #7
    Candidat au Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Septembre 2006
    Messages : 4
    Points : 2
    Points
    2
    Par défaut Résolu
    Bonjour j'ai résolu le problème.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    SELECT J.Jou_Nom, J.Jou_Prenom, B.nb_buts
    FROM joueurs J
    LEFT JOIN
    (
    SELECT Jou_IDE, COUNT(*) AS nb_buts
    FROM buts
    JOIN matchs ON buts.Mat_IDE = matchs.Mat_ID
    WHERE matchs.Sai_IDE = '$saisonsid'
    GROUP BY Jou_IDE
    ) AS B ON J.Jou_ID = B.Jou_IDE 
    WHERE J.Pos_IDE <> 3 AND J.Jou_Actif = 1 ORDER BY B.nb_buts DESC, J.Jou_Nom ASC LIMIT 0, 3
    Il fallait enlever une parenthèse et après ca fonctionne
    merci quand même
    Nils

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

Discussions similaires

  1. Erreur d'exécution d'une requête sql
    Par marceline dans le forum Oracle
    Réponses: 2
    Dernier message: 11/07/2006, 13h12
  2. Erreur de syntaxe sur une requête paramétrée
    Par deglingo37 dans le forum Access
    Réponses: 5
    Dernier message: 16/05/2006, 22h21
  3. [MySQL] Message d'erreur à l'exécution d'une requête
    Par leloup84 dans le forum PHP & Base de données
    Réponses: 15
    Dernier message: 28/02/2006, 14h06
  4. Réponses: 6
    Dernier message: 29/11/2005, 19h36
  5. Erreur d'agrégation dans une requête UNION
    Par soso78 dans le forum Access
    Réponses: 2
    Dernier message: 05/10/2005, 00h11

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