Maison > Article > base de données > RECOMMANDATION
La fonction RECOMMANDATION est un outil puissant en SQL qui vous permet de générer des sous-totaux et des totaux généraux dans des requêtes agrégées. Cette fonctionnalité est particulièrement utile pour les rapports et les analyses, où il est nécessaire de calculer des valeurs consolidées à différents niveaux de détail.
La fonction RECOMMANDATION est utilisée en conjonction avec la clause GROUP BY pour créer des regroupements hiérarchiques. Il ajoute automatiquement des lignes supplémentaires qui représentent les sous-totaux (sommes partielles) et le total général à la fin de la requête.
SELECT column1, column2, aggregation(column3) FROM table GROUP BY RECOMMANDATION(column1, column2);
Travaillons avec la table des produits créée dans le code ci-dessus, qui contient des informations sur les produits et leurs catégories.
Si on interroge uniquement le regroupement par catégorie, on obtient le résultat suivant :
SELECT product_category, SUM(product_value) AS total FROM products GROUP BY product_category;
Résultat :
Category | Total |
---|---|
clothing | 40.48 |
food | 6.97 |
En ajoutant la fonction RECOMMANDATION, nous incluons les sous-totaux et le total général :
SELECT CASE WHEN product_category IS NULL THEN 'Grand Total' ELSE product_category END AS category, SUM(product_value) AS total FROM products GROUP BY RECOMMANDATION(product_category);
Résultat :
Category | Total |
---|---|
clothing | 40.48 |
food | 6.97 |
Grand Total | 47.45 |
Nous pouvons aller plus loin et calculer des sous-totaux à plusieurs niveaux. Par exemple, pour calculer les sous-totaux par catégorie et par produit :
SELECT CASE WHEN product_category IS NULL AND product_name IS NULL THEN 'Grand Total' WHEN product_name IS NULL THEN 'Subtotal - ' || product_category ELSE product_name END AS description, SUM(product_value) AS total FROM products GROUP BY RECOMMANDATION(product_category, product_name);
Résultat :
Description | Total |
---|---|
T-shirt | 10.99 |
Shorts | 8.99 |
Shoes | 20.50 |
Subtotal - clothing | 40.48 |
Rice | 1.99 |
Popcorn | 0.99 |
Filet Steak | 3.99 |
Subtotal - food | 6.97 |
Grand Total | 47.45 |
La fonction RECOMMANDATION simplifie la création de rapports complexes, réduisant ainsi le besoin de manipulation manuelle. Cette fonctionnalité est prise en charge par de nombreuses bases de données telles qu'Oracle, SQL Server et MySQL. Utilisez-le pour rendre vos requêtes plus efficaces et vos rapports plus dynamiques ! ?
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!