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 à l'exécution d'une requête


Sujet :

Requêtes MySQL

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    121
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 121
    Points : 64
    Points
    64
    Par défaut Erreur à l'exécution d'une requête
    Re-Bonjour à toutes et à tous,

    Voici une requête que j'ai fais :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    SELECT *
    FROM `module`
    WHERE `ascendant` = (
    SELECT code
    FROM fonction
    WHERE `ascendant` =2588 )
    Quand j'execute cette requête j'obtiens l'erreur suivante :
    #1064 - 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 'SELECT code FROM fonction WHERE `ascendant` = 2588 ) LIMIT 0,

    Pouvez-vous m'aider ?

    Merci beaucoup
    Dimitri.

  2. #2
    Membre éprouvé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2012
    Messages
    631
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2012
    Messages : 631
    Points : 1 220
    Points
    1 220
    Par défaut
    si c'est la clause LIMIT que tu souhaites intégrer dans ton résultat, tu peux procéder ainsi:

    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    SELECT * FROM (
                    SELECT *
                    FROM `module`
                   WHERE `ascendant` = (
                              SELECT code
                              FROM fonction
                              WHERE `ascendant` =2588 )
    ) AS leResultat LIMIT 5;

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    121
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 121
    Points : 64
    Points
    64
    Par défaut
    Citation Envoyé par armel18 Voir le message
    si c'est la clause LIMIT que tu souhaites intégrer dans ton résultat, tu peux procéder ainsi:

    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    SELECT * FROM (
                    SELECT *
                    FROM `module`
                   WHERE `ascendant` = (
                              SELECT code
                              FROM fonction
                              WHERE `ascendant` =2588 )
    ) AS leResultat LIMIT 5;
    Bonjour armel18,

    Merci pour votre réponse. Ce n'est pas la clause LIMIT qui pose problème. C'est la partie :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
        WHERE `ascendant` = (
                SELECT code
                FROM fonction
                WHERE `ascendant` =2588 )
    Il me dit qu'il y a un problème de syntax. Je ne vois pas lequel.

    Quand je mets :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
     WHERE `ascendant` = 17087 OR `ascendant` = 17088 OR `ascendant` = 17089
    il me sort les bons résultats.
    Les resultats de la requête :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
                SELECT code
                FROM fonction
                WHERE `ascendant` =2588
    sont, bien, 17087,17088 et 17089.
    Je ne vois pas du tout ou est le problème.

    Dimitri.

  4. #4
    Expert confirmé
    Profil pro
    Inscrit en
    Août 2008
    Messages
    2 947
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 2 947
    Points : 5 846
    Points
    5 846
    Par défaut
    Si la sous-requête renvoie plusieurs lignes, il faut utiliser IN à la place de =

Discussions similaires

  1. Erreur d'exécution d'une requête liée sous sqlserver 2008
    Par zanoubya dans le forum MS SQL Server
    Réponses: 5
    Dernier message: 25/05/2012, 13h56
  2. Erreur d'exécution d'une requête SQL
    Par KnowPart dans le forum JDBC
    Réponses: 3
    Dernier message: 30/12/2010, 15h48
  3. [AC-2003] Erreur à l'exécution d'une requête d'ajout
    Par flet le kid dans le forum Requêtes et SQL.
    Réponses: 0
    Dernier message: 29/05/2009, 17h27
  4. Erreur d'exécution d'une requête sql
    Par marceline dans le forum Oracle
    Réponses: 2
    Dernier message: 11/07/2006, 13h12
  5. [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

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