2016-01-05 1 views
0

J'ai appris rollup, cube & ensembles de regroupement, mais une chose me trouble est de savoir comment utiliser. Par exemple, si je dois trouver la vente pour chaque mois en 2006 par région & par le directeur des deux requêtes suiventEnsembles de regroupement et de regroupement d'entrepôt de données, à utiliser?

SELECT month, region, sales_mgr, SUM(price) 
FROM Sales 
WHERE year = 1996 
GROUP BY GROUPING SETS((month, region),(month, sales_mgr)) 

et

SELECT month, region, sales_mgr, SUM(price) 
FROM Sales 
WHERE year = 1996 
GROUP BY ROLLUP(month, region, sales_mgr) 

Je sais que le résultat de chacun mais je n » Je ne sais pas lequel utiliser pour répondre correctement à la question, y a-t-il quelque chose que j'ai raté ou que je considère comme étant correct?

Répondre

-1

ROLLUP et CUBE sont juste des raccourcis pour deux usages courants de GROUPING SETS.

GROUPING SETS donne un contrôle plus précis des agrégations que vous voulez calculer.

+0

oh ok mais si je reçois une question comme ça (comme test) laquelle dois-je choisir (même question ci-dessus "trouver ....") – IKeepForgettingAccsMail