recherche

Maison  >  Questions et réponses  >  le corps du texte

Concernant les problèmes de logique métier PHP et d'optimisation MySQL

Il existe une table usr qui stocke l'uid, le nom d'utilisateur
Table commerciale 1, les informations stockées incluent les champs uid, le nom d'utilisateur
Table commerciale 2, les informations stockées ne sont que l'uid,
(Plusieurs éléments de données dans la table commerciale 2 correspondent à une seule pièce de données dans la table métier 1)

Existant : la requête traverse la table métier 2, les données sont une liste de tableaux et le nom d'utilisateur doit être assemblé sur la liste pour faciliter l'affichage frontal
La première méthode consiste à accéder à la table usr de la base de données pour interroger le nom d'utilisateur en fonction de l'uid pour chaque liste ;
La deuxième méthode consiste à parcourir d'abord la table métier de requête 1, à utiliser un tableau vide, les clés stockent l'uid et la valeur correspondante stocke le nom d'utilisateur, à parcourir la liste, à utiliser array_key_exists pour déterminer si l'uid est l'une des clés de arr, si c'est le cas, obtenez arr[uid] comme nom d'utilisateur

Méthode 2 L'avantage est qu'elle évite plusieurs requêtes de base de données pour le nom d'utilisateur, mais il y a une question sur l'utilisation d'une clé de tableau vide pour stocker l'uid. La valeur uid est très grande, comme 10 000, cela impliquera-t-il des problèmes de mémoire de tableau PHP (je ne connais pas grand chose à ce sujet)
J'aimerais également savoir s'il y a d'autres lacunes de la méthode 2. Si oui, y a-t-il une autre meilleure façon de gérer ça



赵。。。。赵得住赵。。。。赵得住2317 Il y a quelques jours1183

répondre à tous(3)je répondrai

  • You bad bad

    You bad bad2018-07-13 16:36:23

    Requête de liste chaînée. Liens externes

    répondre
    0
  • Summer

    Summer2018-07-11 11:52:36

    Interrogez simplement les tables liées


    répondre
    0
  • Annulerrépondre