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 :

requête SELECT multiple [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    78
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 78
    Par défaut requête SELECT multiple
    Bonjour,
    je galère toujours sur mon problème de SELECT multiple, je m'explique :
    Si j'écris ma requete comme suit : SELECT * FROM variétés WHERE variétés.chaine='tf1'
    je charge bien tous les éléments de ma table, Mais je voudrais un SELECT multiple comme suit :
    SELECT * FROM meuble,variétés WHERE meuble.chaine And variétés.chaine='tf1', et la plus rien !!!
    Dans mysqladmin, ma requete passe très bien, dans dreamweaver quand je test il me dit aucune donnée. je n'affiche plus rien. Pour mémoire, j'ai un swf diaporama, qui doit rapatrié, via ma page php, les enregistrements d'un champ commun a plusieurs tables de ma BDD.
    je vous remercie tous pour l'aide que vous pourriez m'apporter.

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Il n'y a pas de jointure entre meuble et chaine ?
    Ca ne serait pas plutot
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT * FROM meuble,variétés USING (chaine) WHERE chaine='tf1'
    ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre éprouvé
    Homme Profil pro
    Webmaster
    Inscrit en
    Mars 2003
    Messages
    898
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 76
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Mars 2003
    Messages : 898
    Par défaut
    Pour joindre les tables il faut un champ commun
    Je crois que ça devrait ressambler à quelque chose comme ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT meuble.*, varietes.* WHERE meuble.chaine = varietes.chaine AND varietes.chaine = 'tf1'

  4. #4
    Membre éprouvé
    Homme Profil pro
    Webmaster
    Inscrit en
    Mars 2003
    Messages
    898
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 76
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Mars 2003
    Messages : 898
    Par défaut
    Autant pour moi, j'ai oublié un bout de code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT meuble.*, varietes.* FROM meuble, varietes WHERE meuble.chaine = varietes.chaine AND varietes.chaine = 'tf1'

  5. #5
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    ce que tu viens d'écrire c'est ce que j'ai écris en moins jolie

    tes champs ont des accents ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    78
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 78
    Par défaut
    mille excuses pour le retard, mais j'etais sur un autre forum.
    j'ai tester la requete, et elle ne charge que les enregistrements de la table meuble, mais celle de varietes, quoi que je face je ne peux pas charger les enregistrements de plusieurs tables.
    merci de vous occupez de mon cas.

  7. #7
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Est-ce qu'on pourrait la structure de tes deux tables et ce qu'elles contiennent ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    78
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 78
    Par défaut
    salut et merci
    je joins une image de l'une de mes tabl, mais elles sont toutes construites de la meme façon.
    Images attachées Images attachées  

  9. #9
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    C'est une UNION alors qu'il faut faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT * FROM variétés WHERE chaine='tf1'
    UNION
    SELECT * FROM meuble WHERE chaine='tf1'
    Mais ta conception de base est mauvaise : des données de meme nature n'ont pas a être eparpillées dans des tables differentes.
    Tu devrais avoir une seule table qui contiendrait en plus un champ "categorie".
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  10. #10
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    78
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 78
    Par défaut
    Pour commencer un grand merci[/COLOR] pour ce bout de code, pour la premiere fois je charge mon xml. ET si je comprend bien je dois mettre autant de UNION qu'il y a de table ?
    je suis sur que tu a raison pour ma BDD, mais en voulant faire simple je pense que je me suis complique la vie, pourais je abuse en te demandant comment j'aurais du m'y prendre.

    je début et c'est mon premier site client

  11. #11
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Tu gardes une seule table pour stocker tes programmes et tu lui ajoutes un champ "categorie" que tu remplis avec les informations comme "meuble" et "variété".

    Pour faire encore mieux il te faudrait une table de reference :
    id - nom
    1 - meuble
    2 - variété
    ...

    et dans ta table programme dans le champ catégorie tu enregistres uniquement le numéro correspondant au lieu d'enregistrer le nom complet.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  12. #12
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    78
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 78
    Par défaut
    Oui, mais alors quel serait la construction de ma requete?

  13. #13
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    si tu veux les emissions meuble de tf1 :
    SELECT * FROM emissions WHERE chaine=1 AND categorie=1;

    Au passage j'ai glissé l'utilisation d'une autre table de reference qui serait tr_chaine :
    id - nom
    1 - tf1
    2 - france 2
    etc.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  14. #14
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    78
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 78
    Par défaut
    je te remercie super génial si je peux te rendre la pariel en 3D cela sera avec grand plaisir.

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

Discussions similaires

  1. Insert multiples avec sous-requête SELECT
    Par lolymeupy dans le forum Requêtes
    Réponses: 6
    Dernier message: 08/08/2011, 17h57
  2. [MySQL] Select multiple pré-sélectioné selon requête SQL
    Par elodie1234 dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 21/07/2008, 14h29
  3. Requête avec select multiple
    Par dams580 dans le forum Requêtes
    Réponses: 7
    Dernier message: 09/10/2007, 11h52
  4. [MySQL] select multiple à reporter dans une requête
    Par PatBateman dans le forum PHP & Base de données
    Réponses: 10
    Dernier message: 07/03/2007, 14h05
  5. Insertion multiple à base de sous requête SELECT
    Par drinkmilk dans le forum Langage SQL
    Réponses: 8
    Dernier message: 14/04/2005, 16h34

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