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 :

Recher dans plusieurs table [MySQL]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Avril 2009
    Messages
    74
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 74
    Par défaut Recher dans plusieurs table
    Bonjour à tous,
    Petit problème dans le réalisation de ma base de données. JE souhaiterai effectuer une recherche sur plusieurs table de ma base dans la même requête en sélectionnant un champs qui porte le même nom dans toutes mes tables. Voici la requête que je fait:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT instru.titre, kit.titre, loop.titre FROM instru, kit, loop WHERE instru.membre_lookupid=20 AND kit.membre_lookupid=20 AND loop.membre_lookupid=20
    Lorsque que j'effectue cette requête dans PhpMyAdmin voici l'erreur que j'obtiens :
    MySQL a réponduocumentation
    #1064 - Erreur de syntaxe près de 'loop . titre FROM instru , kit , loop WHERE instru . membre_look' à la ligne 1
    Merci d'avance

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    Août 2007
    Messages
    109
    Détails du profil
    Informations personnelles :
    Localisation : France, Indre et Loire (Centre)

    Informations forums :
    Inscription : Août 2007
    Messages : 109
    Par défaut
    bonjour,

    LOOP est une commande Mysql, donc tu ne doit pas l'utiliser comme nom de ta table.

    Pour toi :
    la bonne pratique voudrais que tu écrive tes requête sou la forme ANSI 98 comme suit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    SELECT table1.champ , table2.champ
    FROM table1 
    [INNER JOIN ] ou [LEFT OUTER JOIN ] ou [RIGHT OUTER JOIN] table2
    ON table1.id = table2.id 
    WHERE 
    condition(s)
    tu trouveras certainement plus d'information sur le site de Mysql dans la documentation.

    bon courage

  3. #3
    Membre confirmé
    Inscrit en
    Avril 2009
    Messages
    74
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 74
    Par défaut
    Je te remercie pour ta réponse qui a été très rapide mais il ne m'est pas trop possible de changer le nom de la table car ces fameuses tables portent le nom d'un type de morceau de musique (Loop, Kit, Instru,...).
    Si tu as une autre solution me permettant de faire ma requête sans modifier le nom de ma table se serait très sympa .
    Merci

  4. #4
    Membre confirmé
    Inscrit en
    Avril 2009
    Messages
    74
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 74
    Par défaut
    Je viens de résoudre mon problème. Je n'ai pas changer le nom de ma table mais j'ai modifier mon code comme suit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT instru.titre, kit.titre, `loop`.titre 
    FROM instru, kit, `loop `
    WHERE instru.membre_lookupid=20 AND kit.membre_lookupid=20 AND `loop`.membre_lookupid=20
    Merci quand même pour ton aide romulus1206

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

Discussions similaires

  1. Comment rechercher une chaine dans plusieurs tables ?
    Par tsing dans le forum Requêtes
    Réponses: 2
    Dernier message: 26/11/2005, 18h04
  2. Ajout de rubrique dans plusieurs table
    Par flo456 dans le forum ASP
    Réponses: 3
    Dernier message: 19/10/2005, 09h01
  3. [Access] Insérer dans plusieurs tables simultanément
    Par coolkis dans le forum Bases de données
    Réponses: 5
    Dernier message: 22/03/2005, 15h00
  4. Réponses: 7
    Dernier message: 12/10/2004, 16h43
  5. Réponses: 6
    Dernier message: 15/04/2004, 11h04

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