Les vitesses de jointure des requêtes Where et peer-to-peer sont fondamentalement les mêmes, et la vitesse de jointure des requêtes non équivalentes est généralement plus lente.
Nous avons deux tables, à savoir member et member_class. La structure des données est la suivante, où member.class_id et member_class.id. sont des champs associés
Nous avons écrit 200 000 éléments de données dans les deux tables respectivement, dont les membres .class_id doit exister dans member_class.id (il n'y a pas d'enregistrement inégal)
Pour expérimenter À pour être plus précis, nous interrogeons chaque résultat 20 fois :
où le temps de requête est (secondes) :
#🎜🎜 #0.253, 0,256, 0,256, 0,252, 0,257, 0,252, 0,260, 0,265, 0,253, 0,252, 0,254, 0,257, 0,254, 0,257, 0,243, 0,250, 0,252, 0,2 52, 255, 0,284#🎜 La requête les temps de 🎜#on sont (secondes) :
0.247, 0.260, 0.250, 0.246, 0.271, 0.247, 0.251, 0.247, 0. 243, 0,247, 0,247, 0,245, 0,249, 0,246, 0,247, 0,253, 0,248, 0,254, 0,251, 0,247, 0,250
où la moyenne des requêtes est de 0,255 7 s, sur la requête en moyenne 0,2498 s ; deux sont fondamentalement cohérents et la différence est presque négligeable.
Expérience 2 : Des enregistrements inégaux existent
comme suit Photo :
Nous continuons à interroger le test de la table complète :
# 🎜🎜#Oui Un écart très évident peut être constaté. En raison du grand nombre d'enregistrements inégaux dans LEFT JOIN, un grand nombre de valeurs NULL apparaissent. À ce stade, l'efficacité des requêtes de la table intermédiaire devient inférieure. La requête WHERE peut filtrer automatiquement les enregistrements inégaux pendant la requête.
Le temps de requête est donc également plus rapide.Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!