Compartir a través de


Resumir datos

Generar informes de resumen de datos de transacciones agregados para sistemas de ayuda a la toma de decisiones puede ser una operación compleja y que conlleva una gran utilización de recursos. Los siguientes componentes son las principales herramientas que deben usar los programadores al realizar el análisis multidimensional de los datos de SQL Server :

  • SQL ServerIntegration Services

    Integration Services permite extraer datos de transacciones y transformarlos en agregados de resumen en un almacén o un puesto de datos. Para obtener más información, vea Información general (Integration Services).

  • SQL ServerAnalysis Services

    Analysis Services organiza los datos de un almacén de datos en cubos multidimensionales con información de resumen calculada previamente. Esta información se utiliza para proporcionar respuestas rápidas a consultas analíticas complejas. PivotTable® Service proporciona a los clientes acceso a los datos multidimensionales. Analysis Services proporciona también un conjunto de asistentes para definir las estructuras multidimensionales utilizadas en los procesos de análisis y un complemento de Microsoft Management Console para administrar las estructuras de análisis. Posteriormente, las aplicaciones pueden utilizar un conjunto de API para analizar los datos. Para obtener más información, consulte Desarrollar e implementar usando Business Intelligence Development Studio.

Utilizar Transact-SQL para generar informes de resumen sencillos

Las aplicaciones que generan informes de resumen sencillos pueden utilizar los siguientes elementos de Transact-SQL:

  • Operadores ROLLUP, CUBE, o GROUPING SETS. Son todos ellos ampliaciones de la cláusula GROUP BY de la instrucción SELECT. Para obtener más información, vea GROUP BY (Transact-SQL).

  • Los operadores COMPUTE o COMPUTE BY. También están asociados con GROUP BY. Para obtener más información, vea Resumir datos con COMPUTE y COMPUTE BY.

Estos operadores generan conjuntos de resultados que contienen tanto filas de detalle para cada elemento del conjunto de resultados como filas de resumen para cada grupo que muestra los totales de agregados de dicho grupo. La cláusula GROUP BY puede utilizarse para generar resultados que contengan agregados para cada grupo, pero no filas de detalle.

Las aplicaciones deben utilizar Analysis Services en lugar de CUBE, ROLLUP, COMPUTE o COMPUTE BY. De manera específica, CUBE y ROLLUP deben reservarse para entornos sin acceso a OLE DB o ADO, como scripts o procedimientos almacenados.

COMPUTE y COMPUTE BY se admiten por razones de compatibilidad con versiones anteriores. Es recomendable utilizar el operador ROLLUP en lugar de COMPUTE o COMPUTE BY. Los valores de resumen generados por COMPUTE o COMPUTE BY se devuelven como conjuntos de resultados separados intercalados con los conjuntos de resultados que devuelven las filas de detalle para cada grupo, o bien intercalados con un conjunto de resultados que contiene los totales que se anexan después del conjunto de resultados principal. El control de estos conjuntos de resultados aumenta la complejidad del código de una aplicación. COMPUTE y COMPUTE BY no son compatibles con los cursores de servidor. Sin embargo, ROLLUP sí lo es. CUBE y ROLLUP generan un conjunto de resultados sencillo que contiene filas incrustadas de subtotales y totales. Además, en ocasiones, el optimizador de consultas también puede generar planes de ejecución más eficientes para ROLLUP que para COMPUTE y COMPUTE BY.

Cuando GROUP BY se utiliza sin estos operadores, devuelve un conjunto individual de resultados con una fila por grupo que contiene los subtotales de agregados del grupo. En el conjunto de resultados no hay filas de detalle.

Vea también

Otros recursos