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 :

Ou est l'erreur ?


Sujet :

Langage SQL

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 9
    Points : 12
    Points
    12
    Par défaut Ou est l'erreur ?
    BOnjour
    je suis bloqué par une requete qui ne me semble pas bien compliquée mais visiblement ma syntaxe est incorrecte

    je souhaite récupérer le champ question_texte de la table questions
    des entrées de cette table pour lequelles le question_id
    correspond aux question_id de la table questions_enquete pour l'enquete dont le sondage_id est égal à 10


    la requete :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    SELECT question_texte
    FROM questions
    WHERE question_id
    IN (
    SELECT question_id
    FROM questions_enquete
    WHERE sondage_id = '10'
    )
    on me répond :
    #1064 - You have an error in your SQL syntax near 'SELECT question_id
    FROM questions_enquete
    WHERE sondage_id = '10' ) LIMIT ' at line 5
    Balises de code rajoutées par Superstivix
    Merci d'y penser la prochaine fois

  2. #2
    Invité
    Invité(e)
    Par défaut
    ce serait pas plutot
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    SELECT Q.question_texte
    FROM questions Q
    WHERE EXISTS (SELECT QE.question_id
                  FROM questions_enquete QE
                  WHERE sondage_id = '10'
                  AND Q.id_question = QE.id_question);
    ps :

  3. #3
    Expert éminent sénior
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Points : 19 073
    Points
    19 073
    Par défaut
    attention, si c'est du mysql les sous-requêtes peuvent poser probléme... si je ne m'abuse

  4. #4
    Inactif   Avatar de Médiat
    Inscrit en
    Décembre 2003
    Messages
    1 946
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 946
    Points : 2 227
    Points
    2 227
    Par défaut
    Citation Envoyé par orafrance
    attention, si c'est du mysql les sous-requêtes peuvent poser probléme... si je ne m'abuse
    Jusqu'à la 4.1
    J'affirme péremptoirement que toute affirmation péremptoire est fausse
    5ième élément : barde-prince des figures de style, duc de la synecdoque
    Je ne réponds jamais aux questions techniques par MP

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 9
    Points : 12
    Points
    12
    Par défaut
    désolé pour les balises

    la solution que propose Torvalds17 ne fonctionne pas non plus.

    Mais en effet c'est du MySQL... donc a priori pas de solution via une requete ? Faut donc ke je traite ça d'une autre facon..

  6. #6
    Rédacteur/Modérateur

    Avatar de Fabien Celaia
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Octobre 2002
    Messages
    4 222
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Service public

    Informations forums :
    Inscription : Octobre 2002
    Messages : 4 222
    Points : 19 551
    Points
    19 551
    Billets dans le blog
    25
    Par défaut
    et plus simplement :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SELECT q.question_texte 
    FROM questions q, questions_enquete qe
    WHERE q.question_id =qe.question_id 
    AND qe.sondage_id = '10'
    voire, si MySQL supporte les jointurs ANSI
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SELECT q.question_texte 
    FROM questions q inner join questions_enquete qe
    on q.question_id =qe.question_id 
    where qe.sondage_id = '10'
    Sr DBA Oracle / MS-SQL / MySQL / Postgresql / SAP-Sybase / Informix / DB2

    N'oublie pas de consulter mes articles, mon blog, les cours et les FAQ SGBD

    Attention : pas de réponse technique par MP : pensez aux autres, passez par les forums !

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 9
    Points : 12
    Points
    12
    Par défaut
    en effet ca fonctionne bien... thanxx

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

Discussions similaires

  1. Ou est l'erreur?
    Par JavaAcro dans le forum Langage
    Réponses: 2
    Dernier message: 12/02/2006, 18h59
  2. Réponses: 13
    Dernier message: 30/01/2006, 14h21
  3. Où est l'erreur?
    Par Paulinho dans le forum C++
    Réponses: 3
    Dernier message: 26/10/2005, 09h48
  4. [VB.NET] Pagination DataGrid (où est l'erreur?)
    Par franculo_caoulene dans le forum ASP.NET
    Réponses: 2
    Dernier message: 25/10/2004, 11h46
  5. [Erreur] Quel est cette erreur?
    Par netah25 dans le forum C++Builder
    Réponses: 3
    Dernier message: 11/08/2004, 10h16

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