Book Image

SQL Server Analysis Services 2012 Cube Development Cookbook

Book Image

SQL Server Analysis Services 2012 Cube Development Cookbook

Overview of this book

Microsoft SQL Server is a relational database management system. As a database, it is a software product whose primary function is to store and retrieve data as requested by other software applications. SQL Server Analysis Services adds OLAP and data mining capabilities for SQL Server databases. OLAP (online analytical processing) is a technique for analyzing business data for effective business intelligence. This practical guide teaches you how to build business intelligence solutions using Microsoft’s core product – SQL Server Analysis Services. The book covers the traditional multi-dimensional model which has been around for over a decade as well as the tabular model introduced with SQL Server 2012. Starting with comparing MultiDimensional and tabular models – discussing the values and limitations of each, you will then cover the essential techniques for building dimensions and cubes. Following on from this, you will be introduced to more advanced topics, such as designing partitions and aggregations, implementing security, and synchronizing databases for solutions serving many users. The book also covers administrative material, such as database backups, server configuration options, and monitoring and tuning performance. We also provide a primer on MultiDimensional eXpressions (MDX) as well as Data Analysis expressions (DAX) languages. This book provides you with data cube development techniques, and also the ongoing monitoring and tuning for Analysis Services.
Table of Contents (19 chapters)
SQL Server Analysis Services 2012 Cube Development Cookbook
Credits
About the Authors
About the Reviewers
www.PacktPub.com
Preface
Index

Sorting the query output


To make the output easier to decipher, you could use the ORDER function to sort the returned dimension members based on some criteria. In addition, many reports require limiting the results only to the best- or worst-performing hierarchy members. You can exploit the TOPCOUNT and BOTTOMCOUNT functions to meet such requirements.

How to do it...

Let's get started with sorting the query output.

  1. The ORDER function accepts a set as the parameter and allows sorting in an ascending or descending manner, depending on the sorting expression. For example, the following query returns those cities in which the reseller sales amount for components exceeded $200000, ordering results based on the reseller sales amount:

    SELECT ORDER (
      FILTER([Geography].[City].members, [Measures].[Reseller Sales Amount] > 200000
      AND [Geography].[City].CurrentMember.Name<> 'All Geographies'),  
      [Measures].[Reseller Sales Amount], DESC)ON 0,
    [Measures].[Reseller Sales Amount] ON 1
    FROM ...