Explication détaillée de la requête multi-table de MySQL
Tout d'abord, afin de faciliter l'explication du problème, créez deux tableaux emp (informations sur les employés) et dept (informations sur le service des employés). Les données sont les suivantes :
Dans l'article précédent. , nous avons partagé une méthode de requête de table unique, mais dans les applications réelles, les données que nous souhaitons interroger ne se trouvent probablement pas dans la même table, mais proviennent de tables différentes. Si une requête multi-tables n’ajoute aucune condition, le résultat obtenu est appelé produit cartésien. Par exemple, recherchez le nom de l'employé, son salaire et le nom du service.
On peut constater que le résultat est comme ceci, sélectionnez le premier enregistrement de la première table, combinez-le avec tous les enregistrements de la deuxième table, puis prenez le deuxième enregistrement de la première table et combinez-le avec tous les enregistrements de la deuxième table. Un tel résultat n'a aucun sens. Ce dont nous avons besoin, c'est de l'enregistrement avec le champ emp.deptno = dept.deptno.
Auto-jointure
L'auto-jointure signifie joindre la requête dans la même table
pour afficher le supérieur de l'employé FORD Nom du leader
Sous-requête
La sous-requête fait référence à une instruction select intégrée dans d'autres instructions SQL, également appelée requête d'imbrication .
Sous-requête à une seule ligne : Le résultat de la requête de la sous-requête n'a qu'une seule ligne
Affiche les employés du même service que SMITH
Sous-requête à plusieurs lignes (dans, tout, n'importe lequel) : sous-requête qui renvoie plusieurs enregistrements
Interrogez les noms, les emplois, les salaires et les services des fonctionnaires qui ont le même emploi que le numéro des 10 meilleurs départements, mais n'inclut pas les propres informations du n° 10
Affiche le nom, le salaire et le numéro de département des employés dont le salaire est supérieur au salaire de tous les employés portant le numéro de département 30
Affiche le nom, le salaire et le numéro de département de l'employé dont le salaire est supérieur au salaire de tout employé portant le numéro de département 30
Sous-requête multi-colonnes : une instruction de sous-requête qui renvoie plusieurs colonnes de données
Interroger les employés ayant le même service et le même poste que SMITH, à l'exclusion de SMITH lui-même
Utilisez la sous-requête dans la clause from
pour afficher les informations sur les employés qui sont supérieures au salaire moyen de votre service
pour trouver le nom, l'emploi, le sal de la personne avec le salaire le plus élevé dans chaque département
Afficher les informations de chaque département (nom du département, numéro, adresse) et le nombre d'employés
Il existe deux méthodes qui peuvent être utilisées ici, mais il a été vérifié que lorsqu'il y a beaucoup de données, l'efficacité de la sous-requête from est supérieure à celle de la requête multi-tables.
Supprimer les enregistrements en double dans la table
On sait qu'il y a des données en double dans une table tt
Créer une table vide tmp_tt La structure. de la table vide est la même que La structure de la table tt est la même ; créez la table tmp_tt comme tt ;
Distinguez la table tt et importez les données dans la table vide, insérez dans tmp_tt sélectionnez distinct * de tt ; ;
Supprimer la table d'origine ttdrop table tt;
Renommer tmp_tt en ttalter table tmp_tt renommer tt;
Fusionner la requête
Dans les applications pratiques, afin de fusionner plusieurs sélections Pour exécuter les résultats, vous pouvez utiliser les opérateurs union, union all set
1. L'opérateur union est utilisé pour obtenir l'union de deux résultats, puis supprimer automatiquement les doublons lignes pour trouver les personnes avec un salaire supérieur à 2500 et un poste de Manger
2 syndicat tout est similaire au syndicat, mais ne supprimera pas automatiquement les doublons
Par exemple. : similaire à ou
Clé étrangère
La clé étrangère définit la relation entre la table maître et la table esclave. sont principalement définis sur la table esclave. La table maître doit avoir une clé primaire ou une clé unique. Lorsqu'une clé étrangère est définie, les données de la colonne de clé étrangère doivent exister dans la colonne de la table principale ou être NULL.
Par exemple : créer une classe de table principale, à partir de la table stu
D'après la figure ci-dessus, nous pouvons savoir que la la clé primaire ne peut pas être nulle. Cependant, la clé étrangère peut être nulle et les données de la clé étrangère ne peuvent pas exister mais n'existent pas dans la table principale.
Pour plus de questions connexes, veuillez visiter le site Web PHP chinois : 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!

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

Video Face Swap
Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

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)

Compétences en matière de requêtes liées à plusieurs tables en PHP Les requêtes associées constituent une partie importante des requêtes de base de données, en particulier lorsque vous devez afficher des données dans plusieurs tables de base de données associées. Dans les applications PHP, les requêtes liées à plusieurs tables sont souvent utilisées lors de l'utilisation de bases de données telles que MySQL. La signification de l'association multi-tables est de comparer les données d'une table avec les données d'une autre ou de plusieurs tables, et de connecter les lignes qui répondent aux exigences du résultat. Lorsque vous effectuez des requêtes de corrélation multi-tables, vous devez prendre en compte la relation entre les tables et utiliser les méthodes de corrélation appropriées. Ce qui suit présente plusieurs types de

Maîtriser globalement la requête multi-tables MyBatis : un guide pratique pour améliorer l'efficacité du traitement des données Introduction : Aujourd'hui, dans le développement de logiciels, l'efficacité du traitement des données est une considération importante. Pour le traitement de données impliquant des requêtes multi-tables, MyBatis est un outil puissant. Cet article expliquera comment maîtriser pleinement les requêtes multi-tables MyBatis et améliorer l'efficacité du traitement des données. L'article démontrera à travers des exemples de code spécifiques pour aider les lecteurs à mieux comprendre et appliquer. 1. Configurez l'environnement MyBatis. Tout d'abord, nous devons configurer My.

Analyse approfondie des requêtes multi-tables MyBatis : conseils et stratégies pour optimiser les performances SQL Résumé : MyBatis est un framework de couche de persistance couramment utilisé qui peut nous aider à exploiter la base de données plus facilement. Dans le développement réel, les requêtes multi-tables sont une exigence très courante, mais l'exécution de requêtes multi-tables de manière inappropriée peut entraîner une dégradation des performances. Cet article se concentrera sur la façon d'utiliser MyBatis pour les requêtes multi-tables et donnera quelques conseils et stratégies pour optimiser les performances SQL. Introduction MyBatis est un framework de couche de persistance Java populaire,

Analyse des problèmes courants dans la requête multi-tables MyBatis : pour résoudre la confusion dans la requête de corrélation de données, des exemples de code spécifiques sont nécessaires. Introduction : Dans le développement d'applications de base de données, la requête de corrélation entre les tables de données est une exigence très courante. Pour le framework MyBatis, la requête multi-tables est une fonction très importante. Cependant, en raison de la flexibilité et des puissantes capacités SQL dynamiques de MyBatis, les développeurs peuvent parfois rencontrer une certaine confusion lors de l'exécution de requêtes multi-tables. Cet article décrit certains problèmes courants et fournit des exemples de code spécifiques pour les résoudre.

Comment optimiser les requêtes multi-tables en PHP et MySQL via les index ? Lors du développement d'applications Web, des interactions avec des bases de données sont souvent impliquées. En particulier pour les bases de données relationnelles, les requêtes multi-tables sont des opérations très courantes. Cependant, lorsque la quantité de données est trop importante et que la complexité des requêtes augmente, les performances des requêtes multi-tables peuvent être affectées dans une certaine mesure. Afin d'améliorer l'efficacité des requêtes, nous pouvons effectuer des ajustements en optimisant l'index. Un index est une structure de données utilisée dans une base de données pour améliorer les performances des requêtes. Elle peut accélérer la recherche de données. en P

Avec le développement d'Internet et l'expansion continue des domaines d'application, l'augmentation du volume de données est devenue la norme et une interrogation efficace des données est particulièrement importante. Lors de l'utilisation d'une base de données MySQL, la requête multi-tables est une méthode de requête de données extrêmement courante. Par conséquent, comment effectuer une requête de données multi-tables efficace est devenu une compétence que les utilisateurs de bases de données MySQL doivent maîtriser. Cet article présentera comment effectuer une requête de données multi-tables efficace sous les aspects suivants : 1. Concepts de base et syntaxe de la requête multi-table 2. Compétences d'optimisation de la requête multi-table ;

MySql est un système de gestion de bases de données relationnelles largement utilisé dans une variété d'applications de différentes tailles et types, en particulier dans les applications Web, les solutions d'entreprise et les outils d'analyse de données. Dans ces applications, il est souvent nécessaire d'interroger les données de plusieurs tables. Par conséquent, afin d'améliorer l'efficacité des requêtes et de réduire la complexité de l'écriture d'un grand nombre d'instructions SQL, MySql introduit le concept de vues. Une vue est une table virtuelle qui n'existe pas réellement dans la base de données, mais qui consiste en une ou plusieurs instructions SELECT.

PHP est un langage de programmation Web couramment utilisé. Sa large application signifie que nous devons souvent exploiter plusieurs bases de données et tables en code PHP. Les opérations de requêtes multi-bases de données et multi-tables sont fréquentes et prennent du temps, l'optimisation de l'efficacité des requêtes est donc devenue un défi auquel il faut faire face dans la programmation PHP. Dans cet article, nous partagerons quelques méthodes pratiques pour optimiser les requêtes multi-bases de données et multi-tables. 1. Utilisez la bonne méthode de requête Le choix de la méthode de requête a un impact important sur les performances des requêtes multi-bases de données et multi-tables. Lors de l'exécution de requêtes multi-bases de données et multi-tables, il existe trois méthodes de requête couramment utilisées : JOIN queryJ
