


Résumé de l'optimisation des clauses select et Where dans MySQL
Le contenu de cet article est un résumé de l'optimisation des clauses select et Where dans MySQL. Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer.
Optimisation de la base de données :
1. L'optimisation peut être effectuée au niveau d'une seule instruction SQL, de l'application entière, d'un seul serveur de base de données ou de plusieurs réseaux. serveurs de base de données
2. Les performances de la base de données dépendent de plusieurs facteurs au niveau de la base de données, tels que les tables, les requêtes et les paramètres de configuration
3. Optimiser au niveau de la base de données, optimiser au niveau matériel, équilibrer la portabilité et les performances
. 4. Structure appropriée, type de données approprié ; applications qui effectuent des mises à jour fréquentes avec un grand nombre de tables (peu de colonnes) ; applications qui analysent de grandes quantités de données avec un petit nombre de tables (plusieurs colonnes choisissent le moteur de stockage et l'index appropriés) ; ;
5. Compression applicable Diverses charges de travail pour les tables InnoDB, ainsi que les tables MyISAM en lecture seule
6. Choisissez une stratégie de verrouillage appropriée ; le moteur de stockage InnoDB peut gérer la plupart des problèmes de verrouillage
7. La mémoire principale les zones configurées sont le pool de tampons InnoDB et le cache de clés MyISAM.
8. Optimisez l'instruction select. Cette technique est également applicable à d'autres instructions de suppression avec où. Définir des index sur les colonnes de la clause Where ; les index sont particulièrement importants pour référencer plusieurs colonnes telles que les jointures et les clés étrangères
sélectionnez l'optimisation de la clause Where :
1. Ajustez la structure de la requête, comme les appels de fonction, appelez-les une seule fois pour chaque ligne de l'ensemble de résultats, et pour. chaque ligne de la table Appelez-la une seule fois
2. Réduisez le nombre d'analyses complètes de la table dans la requête
3. Utilisez régulièrement l'instruction ANALYZE TABLE pour maintenir les statistiques de la table à jour
4. Comprendre le réglage techniques du moteur de stockage spécifiques à chaque table, technologie d'indexation et paramètres de configuration
5. Optimiser les transactions de requête unique pour les tables InnoDB
6. Enquêter sur les détails internes d'une requête spécifique en lisant le plan EXPLAIN et en ajustant les index, OÙ clauses, clauses de jointure, etc.
7. Ajustez la taille et les propriétés de la zone mémoire utilisée par MySQL pour la mise en cache. En utilisant efficacement le pool de tampons InnoDB, le cache de clés MyISAM et le cache de requêtes MySQL
8.where conditions, suppression des parenthèses inutiles, pliage constant, suppression des conditions constantes, réduction de la logique inutile
9 Utilisées par l'index Les expressions constantes ne sont que. calculé une fois
10. count(*) est directement interrogé à partir des informations de la table ; lorsqu'il n'y a qu'une seule table, il en va de même pour les expressions non nulles
11. COUNT (), MIN(), etc.), HAVING sera fusionné avec WHERE
12. Table constante, une seule ligne ou table vide ; la clause Where agit sur la clé primaire ou l'index unique
13. et GROUP BY Si toutes les colonnes de la clause proviennent de la même table, alors la table sera préférée lors de la jointure
14. Si la clause order by et la clause group by sont différentes, ou proviennent de tables différentes, un temporaire. une table sera créée
15. Si vous utilisez le modificateur SQL_SMALL_RESULT, MySQL utilisera une table temporaire en mémoire
16. MySQL peut simplement lire les lignes de l'index sans même consulter le fichier de données
17. Avant en sortant chaque ligne, un saut passera les lignes qui ne correspondent pas à la clause HAVING
La table suivante est utilisée comme table constante :
SELECT * FROM t WHERE primary_key=1; SELECT * FROM t1,t2 WHERE t1.primary_key=1 AND t2.primary_key=t1.id;
La requête suivante s'exécute très rapidement :
SELECT COUNT(*) FROM tbl_name; SELECT MIN(key_part1),MAX(key_part1) FROM tbl_name; SELECT MAX(key_part2) FROM tbl_name WHERE key_part1=constant; SELECT ... FROM tbl_name ORDER BY key_part1,key_part2,... LIMIT 10; SELECT ... FROM tbl_name ORDER BY key_part1 DESC, key_part2 DESC, ... LIMIT 10;
SELECT key_part1,key_part2 FROM tbl_name WHERE key_part1=val; SELECT COUNT(*) FROM tbl_name WHERE key_part1=val1 AND key_part2=val2; SELECT key_part2 FROM tbl_name GROUP BY key_part1;
La requête suivante utilise l'index pour récupérer les données dans un ordre trié, aucun tri séparé n'est requis
SELECT ... FROM tbl_name ORDER BY key_part1,key_part2,... ; SELECT ... FROM tbl_name ORDER BY key_part1 DESC, key_part2 DESC, ... ;
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!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

MySQL convient aux débutants car il est simple à installer, puissant et facile à gérer les données. 1. Installation et configuration simples, adaptées à une variété de systèmes d'exploitation. 2. Prise en charge des opérations de base telles que la création de bases de données et de tables, d'insertion, d'interrogation, de mise à jour et de suppression de données. 3. Fournir des fonctions avancées telles que les opérations de jointure et les sous-questionnaires. 4. Les performances peuvent être améliorées par l'indexation, l'optimisation des requêtes et le partitionnement de la table. 5. Prise en charge des mesures de sauvegarde, de récupération et de sécurité pour garantir la sécurité et la cohérence des données.

MySQL est un système de gestion de base de données relationnel open source. 1) Créez une base de données et des tables: utilisez les commandes CreateDatabase et CreateTable. 2) Opérations de base: insérer, mettre à jour, supprimer et sélectionner. 3) Opérations avancées: jointure, sous-requête et traitement des transactions. 4) Compétences de débogage: vérifiez la syntaxe, le type de données et les autorisations. 5) Suggestions d'optimisation: utilisez des index, évitez de sélectionner * et utilisez les transactions.

Vous pouvez ouvrir PHPMYADMIN via les étapes suivantes: 1. Connectez-vous au panneau de configuration du site Web; 2. Trouvez et cliquez sur l'icône PHPMYADMIN; 3. Entrez les informations d'identification MySQL; 4. Cliquez sur "Connexion".

Créez une base de données à l'aide de NAVICAT Premium: Connectez-vous au serveur de base de données et entrez les paramètres de connexion. Cliquez avec le bouton droit sur le serveur et sélectionnez Créer une base de données. Entrez le nom de la nouvelle base de données et le jeu de caractères spécifié et la collation. Connectez-vous à la nouvelle base de données et créez le tableau dans le navigateur d'objet. Cliquez avec le bouton droit sur le tableau et sélectionnez Insérer des données pour insérer les données.

MySQL et SQL sont des compétences essentielles pour les développeurs. 1.MySQL est un système de gestion de base de données relationnel open source, et SQL est le langage standard utilisé pour gérer et exploiter des bases de données. 2.MySQL prend en charge plusieurs moteurs de stockage via des fonctions de stockage et de récupération de données efficaces, et SQL termine des opérations de données complexes via des instructions simples. 3. Les exemples d'utilisation comprennent les requêtes de base et les requêtes avancées, telles que le filtrage et le tri par condition. 4. Les erreurs courantes incluent les erreurs de syntaxe et les problèmes de performances, qui peuvent être optimisées en vérifiant les instructions SQL et en utilisant des commandes Explication. 5. Les techniques d'optimisation des performances incluent l'utilisation d'index, d'éviter la numérisation complète de la table, d'optimiser les opérations de jointure et d'améliorer la lisibilité du code.

Vous pouvez créer une nouvelle connexion MySQL dans NAVICAT en suivant les étapes: ouvrez l'application et sélectionnez une nouvelle connexion (CTRL N). Sélectionnez "MySQL" comme type de connexion. Entrez l'adresse Hostname / IP, le port, le nom d'utilisateur et le mot de passe. (Facultatif) Configurer les options avancées. Enregistrez la connexion et entrez le nom de la connexion.

La récupération des lignes supprimées directement de la base de données est généralement impossible à moins qu'il n'y ait un mécanisme de sauvegarde ou de retour en arrière. Point clé: Rollback de la transaction: Exécutez Rollback avant que la transaction ne s'engage à récupérer les données. Sauvegarde: la sauvegarde régulière de la base de données peut être utilisée pour restaurer rapidement les données. Instantané de la base de données: vous pouvez créer une copie en lecture seule de la base de données et restaurer les données après la suppression des données accidentellement. Utilisez la déclaration de suppression avec prudence: vérifiez soigneusement les conditions pour éviter la suppression accidentelle de données. Utilisez la clause WHERE: Spécifiez explicitement les données à supprimer. Utilisez l'environnement de test: testez avant d'effectuer une opération de suppression.

Redis utilise une architecture filetée unique pour fournir des performances élevées, une simplicité et une cohérence. Il utilise le multiplexage d'E / S, les boucles d'événements, les E / S non bloquantes et la mémoire partagée pour améliorer la concurrence, mais avec des limites de limitations de concurrence, un point d'échec unique et inadapté aux charges de travail à forte intensité d'écriture.
