Partage
  • Partager sur Facebook
  • Partager sur Twitter

Afficher plusieurs valeurs d'une même colonne

    3 novembre 2018 à 13:54:05

    Salut,

    Je souhaiterai afficher sur une page les joueurs ayant joué dans les deux équipes.

    Voici ma structure simplifiée :

    J'ai 2 variables :

    $equipe_domicile = $results['equipe_domicile '];
    $equipe_exterieur = $results['equipe_exterieur '];

    J'ai testé cette requête :

    ("SELECT * FROM "._JOUEURS_." WHERE id_equipe IN('$equipe_domicile ','$equipe_exterieur') ");

    Mais j'obtiens les joueurs qui ont joué dans UNE des deux équipes.

    Et si je mets un AND :

    ("SELECT * FROM "._JOUEURS_." WHERE id_equipe = '$equipe_domicile' AND id_equipe = '$equipe_exterieur' ");

    Je n'ai plus de résultat qui s'affiche...
    Avez-vous une idée de la requête à établir?

    Merci d'avance !

    -
    Edité par Beginner 3 novembre 2018 à 17:38:19

    • Partager sur Facebook
    • Partager sur Twitter
      4 novembre 2018 à 23:03:55

      ("SELECT * FROM "._JOUEURS_." WHERE id_equipe = '$equipe_domicile' AND id_equipe = '$equipe_exterieur' ");

      Cette requête ne peut pas fonctionner. Car un seul tuple ne peut pas contenir la même colonne avec deux valeurs différentes.

      C'est comme si tu écrivais SELECT * FROM JOUEURS WHERE idjoueur = 100 AND idjoueur =101. Forcément, le résultat est nul.

      Je dirais qu'il y a un truc qui ne va pas dans ta BDD. S'il y a plusieurs équipes pour un joueur, c'est que ce n'est pas un attribut du joueur ! Il te manque à priori une table de liaison entre les équipes et les joueurs, qu'on pourrait appeler rencontres et qui aurait des clés étrangères vers d'une part les joueurs, d'autre part les équipes (plus les dates et ceux que tu veux).

      Mais si tu es convaincu de la validité de ta BDD, pourquoi ne pas gérer l'affichage par PHP en piochant les infos dans la table puis en mettant les valeurs dans des arrays qui te permettraient de travailler dessus ?

      Tu vois ce que je veux dire ?

      • Partager sur Facebook
      • Partager sur Twitter
        6 novembre 2018 à 19:36:54

        Merci Domi pour ton message.
        En faite, cette requête est sur une page qui affichage un match de deux équipes. Et du coup, avec les deux ID de ces équipes, je voudrais sortir la liste des joueurs qui ont joué dans ces deux équipes.

        • Partager sur Facebook
        • Partager sur Twitter
          8 novembre 2018 à 11:00:01

          Tu ne m'as pas répondu sur ta bdd.

          Comment elle est fichue ? (tables et colonnes)

          • Partager sur Facebook
          • Partager sur Twitter
            14 novembre 2018 à 22:17:28

            Alors j'ai ma table MATCHS avec id | equipe_domicile | equipe_exterieur

            Et ma table JOUEURS avec id | nom | prenom | id_equipe

            -
            Edité par Beginner 14 novembre 2018 à 22:20:59

            • Partager sur Facebook
            • Partager sur Twitter
              16 novembre 2018 à 18:44:37

              Bonjour

              Et tu n'as pas de table Equipe ?

              • Partager sur Facebook
              • Partager sur Twitter
                18 novembre 2018 à 16:56:23

                Bonjour Comar91 et Domi65.

                - Le OR va m'afficher l'une ou l'autre des deux équipes.

                - Oui, je possède une table équipes. Leur ID est récupéré avec $equipe_domicile et $equipe_exterieur.

                -
                Edité par Beginner 18 novembre 2018 à 16:56:33

                • Partager sur Facebook
                • Partager sur Twitter
                  18 novembre 2018 à 17:11:40

                  Bonjour,

                  Beginner a écrit:

                  - Le OR va m'afficher l'une ou l'autre des deux équipes.

                  Tu as essayé ??

                  • Partager sur Facebook
                  • Partager sur Twitter
                  Comar
                    19 novembre 2018 à 13:32:55

                    Salut,

                    Mauvaise conception:

                    table joueur(id,nom,...)

                    table equipe(id,nom,...)

                    table joueur_equipe(id,idjoueur,idequipe,...)

                    table match(id,lieu,idequipeA,idequipeB,...) => A == recevante, B == exterieure c'est comme ça sur toutes les feuilles de matchs de tous les sports

                    Bonne lecture/réflexion

                    • Partager sur Facebook
                    • Partager sur Twitter
                      20 novembre 2018 à 15:25:10

                      @christouphe

                      « Mauvaise conception »

                      Ouaip, c'est ce que j'ai dit dès le départ. Voyant que ça restait sans suite, j'ai laissé tomber.

                      -
                      Edité par Domi65 20 novembre 2018 à 15:26:05

                      • Partager sur Facebook
                      • Partager sur Twitter
                        20 novembre 2018 à 19:18:46

                        Ça ressemble bien à ça.

                        Ma page de match appelle la requête avec la table MATCHS : id | equipe_domicile | equipe_exterieur... etc

                        Et j'appelle ensuite la table du joueur qui possède un id_equipe dans le lequel je voudrais qu'il soit égal à "equipe_domicile" et "equipe_exterieur" pour que son nom soit affiché en tant que "joueur des deux équipes".

                        • Partager sur Facebook
                        • Partager sur Twitter

                        Afficher plusieurs valeurs d'une même colonne

                        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                        • Editeur
                        • Markdown