-1
votes

Obtenez des candidats du tableau 1 et comparez l'ID et obtenez des informations d'utilisateur à partir du tableau 2 en utilisant php

ok donc j'ai deux tables

  1. Liste des candidats - cela montre tous les candidats

     Entrez la description de l'image ici

    1. Table utilisateur

       Entrez la description de l'image ici

      maintenant je fournis news_id par la méthode postale et je veux énumérer les détails de tous Utilisateurs (e-mail, mobile, nom d'utilisateur) où la valeur pour user_authToken et user_authtokoken est identique. Quelqu'un peut-il m'aider avec cette logique en utilisant php . xxx


7 commentaires

N'est-ce pas simplement un simple joindre en utilisant les colonnes user_authtokoken ?


J'ai essayé mais il énumère tous les résultats dans le tableau


Montrez ce que vous avez essayé afin que nous puissions voir ce que vous avez fait de mal et vous aider à résoudre ce problème.


J'ai édité ce que j'ai essayé, vérifie ma requête et s'il vous plaît dites-moi ce que je fais mal


Vous avez oublié de vous joindre à la table , évidemment.


Vous sélectionnez à partir de 2 tables, mais vous ne spécifiez pas comment les 2 tables doivent rejoindre. Vous avez besoin de quelque chose dans votre clause où dit quelque chose sur les lignes de Table1.Column = Table2.Column


En outre, la concaténation de la chaîne est une façon vraiment mauvaise de construire des requêtes SQL car elle laisse votre code large ouvert à l'injection SQL. Bobby -Tables.com


3 Réponses :


-1
votes

Vous pouvez utiliser la jointure gauche pour obtenir un enregistrement à partir des deux table: xxx


4 commentaires

Pourquoi rejoindre la jointure intérieure?


Je pense qu'il peut y avoir plusieurs nouvelles du même utilisateur afin que notre objectif soit de dériver les données primaires est une nouvelle, puis les détails des utilisateurs sont secondaires


La join interne retournera plusieurs rangées. La seule différence avec la jointure gauche est qu'elle retournera des nouvelles d'actualités sans utilisateur correspondant.


Oui, ils présentent tous les deux des enregistrements des deux tables. Mais la jointure gauche affichera également des enregistrements qui ne sont pas dans les deux tables.



-1
votes

Vous n'avez pas spécifié de relation entre les tablettes et applications_list , vous obtenez donc toutes les lignes dans utilisateur . Vous avez également une virgule supplémentaire à la fin de la liste . XXX


0 commentaires

2
votes
  • Tout d'abord, votre nommage est très incompatible, il est difficile de lire et de comprendre.

  • Deuxièmement, veuillez utiliser la déclaration Préparative, sinon vous ouvrez votre système à l'injection SQL. XXX


2 commentaires

Si je devais avoir une autre valeur de la colonne, "profil_url" d'une autre table tbl_profile où la valeur commune est comme "user_authoken" et combine tous les résultats?


Ensuite, vous devez utiliser rejoindre pour rejoindre 3 tables