Maison >base de données >tutoriel mysql >Comment puis-je combiner efficacement plusieurs instructions SELECT avec LIMIT pour récupérer une ligne de chaque schéma ?

Comment puis-je combiner efficacement plusieurs instructions SELECT avec LIMIT pour récupérer une ligne de chaque schéma ?

Patricia Arquette
Patricia Arquetteoriginal
2024-12-19 16:46:08810parcourir

How Can I Efficiently Combine Multiple SELECT Statements with LIMIT to Retrieve One Row from Each Schema?

Combinaison de plusieurs instructions SELECT

Pour récupérer des données de plusieurs schémas dans une seule requête, vous pouvez combiner plusieurs instructions SELECT à l'aide de l'opérateur UNION. Cependant, lorsque vous utilisez LIMIT pour renvoyer une seule ligne de chaque schéma, vous pouvez rencontrer des problèmes lors de la suppression des lignes restantes.

Pour résoudre ce problème, assurez-vous que les sous-requêtes SELECT individuelles sont placées entre parenthèses :

(SELECT result FROM schema1.table LIMIT 1) UNION ALL
(SELECT result FROM schema2.table LIMIT 1)
(SELECT result FROM schema3.table LIMIT 1)

En mettant les sous-requêtes entre parenthèses, les clauses LIMIT et ORDER BY s'appliqueront à chaque sous-requête individuellement, empêchant ainsi la suppression des lignes d'autres schémas.

L'opérateur UNION ALL combine les résultats des requêtes individuelles, éliminant les lignes en double. Il est important d'utiliser UNION ALL car il préserve l'ordre des résultats, ce qui est important dans ce cas où vous voulez une ligne pour chaque schéma.

Une fois que vous avez combiné les instructions SELECT, vous pouvez recopier les résultats dans Excel par rapport aux noms de schéma correspondants. Cela vous fournira un résultat sur une seule colonne avec autant de lignes qu'il y a de schémas, comme vous le souhaitez.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn