Maison > Article > base de données > Quelle est la différence entre in et ou in mysql
Différence : 1. In effectue une requête de connexion de hachage via la table de requête parent et la table d'auto-requête enfant, ou effectue une boucle sur la table de requête parent puis interroge la table de requête enfant 2. En l'absence d'index ; ou clé primaire, À mesure que la quantité de données derrière dans ou ou augmente, l'efficacité d'exécution de ou diminuera considérablement, mais l'efficacité d'exécution de in ne diminuera pas de manière significative.
L'environnement d'exploitation de ce tutoriel : système windows10, version mysql8.0.22, ordinateur Dell G3.
Quelle est la différence entre in et or in mysql ?
Pour la comparaison de données, des dizaines de millions de données
La différence entre in et or in sql est la suivante : différentes opérations, différentes adéquations et différentes exécutions efficacité.
1. Différentes opérations
1. in : in est une connexion de hachage entre la table de requête parent et la table d'auto-requête enfant.
2. or : or consiste à boucler la table de requête parent et à interroger la table de requête enfant à chaque fois que la boucle boucle.
2. Convient à différents 5261
1. in : in convient aux situations où la table de requête enfant contient plus de données que la table de requête parent.
2. ou : ou convient aux situations où la table de requête enfant contient moins de données que la table de requête parent.
3. Efficacité d'exécution différente
1. in : En l'absence d'index, à mesure que la quantité de données derrière in augmente, l'efficacité d'exécution de in ne diminuera pas beaucoup.
2. ou : En l'absence d'index, à mesure que la quantité de données derrière ou augmente, l'efficacité d'exécution de ou diminuera considérablement.
Si les colonnes où se trouvent in et or ont des index ou des clés primaires, il n'y a aucune différence entre or et in, et le plan d'exécution et le temps d'exécution sont presque les mêmes.
Si les colonnes dans et ou se trouvent n'ont pas d'index, la différence de performances sera énorme. En l'absence d'index, à mesure que la quantité de données derrière in ou or augmente, l'efficacité de in ne diminuera pas beaucoup, mais les performances de or diminueront considérablement à mesure que le nombre d'enregistrements augmente
Par conséquent, en cédant et Quand définissant l'efficacité de ou, une condition doit être ajoutée, c'est-à-dire si la colonne est indexée ou s'il s'agit d'une clé primaire. S'il y a un index ou une clé primaire, il n'y a pas de différence de performances. S'il n'y a pas d'index, la différence de performances n'est pas minime !
Apprentissage recommandé : Tutoriel vidéo mysql
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!