Maison > base de données > tutoriel mysql > Comment puis-je trier par programme les résultats d'une requête UNION dans MS Access ?

Comment puis-je trier par programme les résultats d'une requête UNION dans MS Access ?

Mary-Kate Olsen
Libérer: 2025-01-09 22:37:42
original
998 Les gens l'ont consulté

How Can I Programmatically Sort the Results of a UNION Query in MS Access?

Maîtriser les résultats triés dans les requêtes MS Access UNION

La combinaison de données de plusieurs tables à l'aide d'une requête UNION dans MS Access présente souvent des défis lors de la tentative de tri du résultat final. Une approche naïve comme celle-ci :

<code class="language-sql">SELECT table1.field1 FROM table1 ORDER BY table1.field1
UNION
SELECT table2.field1 FROM table2 ORDER BY table2.field1</code>
Copier après la connexion

ne produira pas le résultat trié souhaité dans le moteur de base de données MS Access Jet.

La solution réside dans le placement stratégique de la clause ORDER BY. Au lieu de l’appliquer à l’ensemble de la requête UNION, appliquez-la à chaque instruction SELECT individuelle au sein de l’union. Ceci est réalisé en créant des sous-requêtes :

<code class="language-sql">SELECT * FROM 
(
  SELECT table1.field1 FROM table1 ORDER BY table1.field1
) AS DUMMY_ALIAS1

UNION ALL

SELECT * FROM
( 
  SELECT table2.field1 FROM table2 ORDER BY table2.field1
) AS DUMMY_ALIAS2</code>
Copier après la connexion

Cette requête révisée utilise deux sous-requêtes, chacune avec sa propre clause ORDER BY, garantissant que chaque ensemble de données est trié indépendamment avant d'être combiné avec UNION ALL. Les clauses AS DUMMY_ALIAS1 et AS DUMMY_ALIAS2 fournissent des alias pour les sous-requêtes, qui sont nécessaires au bon fonctionnement de cette approche dans MS Access. L'union résultante présente ensuite les données fusionnées et triées. Notez l'utilisation de UNION ALL, qui inclut toutes les lignes, contrairement à UNION qui supprime les doublons.

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal