Maison >base de données >tutoriel mysql >Comment compter efficacement les lignes de plusieurs tables dans une seule requête ?
Requête optimisée du nombre de lignes multi-tables
Dans les systèmes de gestion de bases de données, il est souvent nécessaire de récupérer le nombre de lignes de plusieurs tables. Bien que l'opérateur UNION ALL puisse combiner les résultats de requêtes distinctes, il ne produit pas toujours le résultat attendu.
Pour résoudre ce problème, un moyen plus efficace consiste à utiliser une sous-requête dans l'instruction SELECT. Cette technique permet d'exécuter plusieurs requêtes et d'afficher les résultats dans le format souhaité.
Instruction de requête :
Considérez la requête suivante, qui compte le nombre de lignes dans les tableaux tab1 et tab2, et affiche les résultats sous forme de deux colonnes distinctes : Count_1 et Count_2 :
<code class="language-sql">SELECT ( SELECT COUNT(*) FROM tab1 ) AS count1, ( SELECT COUNT(*) FROM tab2 ) AS count2 FROM dual</code>
Instructions :
Résultat :
Après l'exécution de la requête, une table contenant deux colonnes Count_1 et Count_2 sera renvoyée, contenant respectivement le nombre de lignes de tab1 et tab2. Cela donne le résultat attendu :
<code>Count_1 Count_2 123 456</code>
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!