Partage
  • Partager sur Facebook
  • Partager sur Twitter

INNER JOIN

Sujet résolu
    6 octobre 2018 à 15:57:04

    Bonjour,

    Je suis confronté un petit soucis relatif à mon INNER JOIN. Tout d'abord je possède deux tables, la première entité se nomme users celle-ci a 6 fields (pk_users, full_name, username, email_adresse, email_adresse_confirm, password, password_confirm, perfect_money)

    Le field username correspond au pseudo de l'utilisateur.

    Ensuite il y a la seconde table qui se nomme deposit qui a 4 fields (pk_deposit, montant_deposit, date_deposit, fk_username).

    Voici une capture d'écran ci-dessous.

    Ce que j'aimerais bien faire c'est récupérer dans une page view.php les values de l'username (table users) vers mon fk_username (table deposits), parce que avoir des chiffres 1,2,3, etc... c'est pas trop pratique!

    Voici une idée de ma requête mais sans résultat.

    SELECT
       deposits.pk_deposit,
       deposits.montant_deposit,
       deposits.date_deposit,
       pk_users 
    
    AS 
      fk_username,
      users.username 
    
    FROM 
      
       deposits INNER JOIN users 
    
    ON 
       (deposits.fk_username=users.pk_users)
    
    ORDER BY
       pk_deposit ASC


    Voici également le résultat en SQL dans PHPMyAdmin

    Je n'arrive pas à intégrer les éléments de username dans le fk_username.

    D'avance merci pour votre aide.









    -
    Edité par Fred2000Fred2000 8 octobre 2018 à 22:43:25

    • Partager sur Facebook
    • Partager sur Twitter
      7 octobre 2018 à 11:23:12

      Bonjour,

      Je ne comprends pas ta question, que veux dire "devienne l'username en question" ?

      Que donne ta requête ? Qu'attends-tu comme résultat ?

      • Partager sur Facebook
      • Partager sur Twitter
        8 octobre 2018 à 22:45:15

        Bonsoir philodick,

        J'ai édité mon premier post en expliquant mieux mon problème. Je ne sais pas si c'est clair maintenant?

        • Partager sur Facebook
        • Partager sur Twitter
          9 octobre 2018 à 0:02:57

          Je t'avoue que j'ai un peu du mal à voir la difficulté, j'ai l'impression que c'est tes aliases qui compliquent tout. Si tu fais simplement ça, ça ne te donne pas le résultat attendu ? :

          SELECT
          *
          FROM
             
             deposits INNER JOIN users
           
          ON
             deposits.fk_username=users.pk_users
           
          ORDER BY
             pk_deposit ASC



          • Partager sur Facebook
          • Partager sur Twitter
            9 octobre 2018 à 0:17:07

            Bonsoir philodick,

            Merci pour ton aide, mais ça ne fonctionne toujours pas voici le résultat de ta requête. Tu vois le fk_username demeure toujours un chiffre.

            Je pense savoir peut-être d'où vient le soucis, c'est probablement lorsque je lie les deux tables ?

            Je me rends dans la table "deposits" ensuite "vue relationnelle" puis dans "action propriété" je tape users_deposits puis dans "colonne" j'indique fk_username après "table" users et colonne "pk_users" je ne sais pas si c'est correct ?

            • Partager sur Facebook
            • Partager sur Twitter
              9 octobre 2018 à 0:32:55

              Mais fk_username sera toujours un nombre, tu ne peux pas le changer !

              Tu récupères le nom correspondant, désolé je ne comprends pas ce que tu veux de plus.

              Pour l'anecdote, je ne vois pas pourquoi tu stockes deux fois l'adresse email.

              • Partager sur Facebook
              • Partager sur Twitter
                9 octobre 2018 à 0:40:58

                Justement je n'arrive pas à récupérer le nom correspondant, tu as raison pour l'adresse email j'allais faire le nécessaire un peu plus tard.

                J'ai déjà fait des inner join mais la je comprends pas; je verrais demain.

                Bonne soirée à toi et merci encore pour ton aide.

                • Partager sur Facebook
                • Partager sur Twitter
                  9 octobre 2018 à 9:32:20

                  Bonjour,

                  Si tu pouvais nous donner le résultat que tu attends par rapport à celui que tu obtiens aujourd'hui ...

                  • Partager sur Facebook
                  • Partager sur Twitter
                  Seul on va plus vite, ensemble on va plus loin ... A maîtriser : Conception BDD, MySQL, PHP/MySQL
                    9 octobre 2018 à 16:39:46

                    Bonjour,

                    Ah, ça fonctionne j'ai compris d'où venait mon erreur c'était au niveau de mon code php en fait.

                    En gros, dans ma page view.php il faut mettre le field username à la place de fk_username.

                    <td><?php echo $result_view_deposits['montant_deposit'];?></td>
                    <td><?php echo $result_view_deposits['date_deposit'];?></td>
                    <td><?php echo $result_view_deposits['username']?></td>

                    Là, ça fonctionne nickel désolé encore pour le dérangement, je vais le noter quelques parts comme ça je n'oublierais pas la prochaine fois.

                    Bonne fin de journée

                    • Partager sur Facebook
                    • Partager sur Twitter

                    INNER JOIN

                    × 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