Dans MySQL, le format de stockage des données est généralement géré dans des tables séparées. Bien que cette méthode puisse améliorer l'efficacité de l'interrogation des données, elle entraîne également un certain degré de difficulté de gestion. Dans les applications pratiques, il est généralement nécessaire d'effectuer des opérations de requête sur plusieurs sous-tables. Dans ce cas, la fonction de requête de table fusionnée de MySQL doit être utilisée.
La requête de fusion de tables fait référence à la fusion des données de plusieurs tables dans un ensemble de résultats selon certaines règles. Dans MySQL, les requêtes de fusion de tables peuvent être implémentées en utilisant une syntaxe telle que union, union all et join. Ce qui suit présentera respectivement les effets d'utilisation et de requête de ces syntaxes.
la syntaxe d'union peut combiner plusieurs résultats de requête en un seul ensemble de résultats et le renvoyer. Il convient de noter que l'opération union supprimera automatiquement les doublons. Si vous devez renvoyer toutes les données, vous devez utiliser l'opération union all.
Le format de syntaxe est le suivant :
select 列名 from 表1 union select 列名 from 表2 select 列名 from 表1 union all select 列名 from 表2
Par exemple, supposons que nous ayons deux sous-tables user1 et users2. Elles ont la même structure et ont deux colonnes, id et name. Nous pouvons utiliser l'instruction de requête SQL suivante pour fusionner. les dans un seul ensemble de résultats :
select id,name from users1 union all select id,name from users2;
la syntaxe de jointure peut joindre plusieurs tables en spécifiant des conditions de jointure et renvoyer des enregistrements qui remplissent les conditions.
Le format de syntaxe est le suivant :
select 表1.列1,表2.列1 from 表1 join 表2 on 表1.列1=表2.列1
Par exemple, supposons que nous ayons deux sous-tables users1 et users2. Les deux tables ont un champ lié à la ville. Nous pouvons utiliser l'instruction de requête SQL suivante pour les connecter :
select users1.id,users1.name,users2.city from users1 join users2 on users1.city=users2.city;
La sous-requête fait référence à l'imbrication d'une autre instruction select dans une instruction select pour filtrer davantage les résultats de la requête.
Par exemple, supposons que nous ayons une sous-table de commandes, qui contient l'ID et le montant de la transaction de l'article. Nous souhaitons interroger le montant total de la transaction et le montant moyen de la transaction de chaque article. Nous pouvons utiliser l'instruction de requête SQL suivante :
select id,sum(amount) as total,avg(amount) as average from (select id,amount from orders) as temp group by id;
Ci-dessus Il s'agit de l'utilisation et de l'effet des trois syntaxes de requête de fusion mysql. Dans les applications réelles, vous pouvez choisir la méthode correspondante en fonction de vos besoins en matière de requête de données et de travail statistique.
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!