Database Journal
MS SQL Oracle DB2 Access MySQL PostgreSQL Sybase PHP SQL Etc SQL Scripts & Samples Tips Database Forum Rss Feed

» Database Journal Home
» Database Articles
» Database Tutorials
MS Access
SQL Scripts & Samples
» Database Forum
» Slideshows
Free Newsletters:

News Via RSS Feed

Rss Feed

Database Journal |DBA Support |SQLCourse |SQLCourse2

Featured Database Articles


Posted Jan 3, 2005

MDX Essentials: String / Numeric Functions: More on the IIF() Function

By William Pearson

About the Series ...

This article is a member of the series, MDX Essentials. The series is designed to provide hands-on application of the fundamentals of the Multidimensional Expressions (MDX) language, with each tutorial progressively adding features designed to meet specific real-world needs.

For more information about the series in general, as well as the software and systems requirements for getting the most out of the lessons included, please see my first article, MDX at First Glance: Introduction to MDX Essentials.

Note: Service Pack 3 updates are assumed for MSSQL Server 2000, MSSQL Server 2000 Analysis Services, and the related Books Online and Samples.


In this lesson, we will continue our examination of the IIF() function, which we began in my article String / Numeric Functions: Introducing the IIF() Function. In that introductory session, we explored the IIF() function, discussing its primary purpose, and touching upon its many capabilities, particularly when used in conjunction with other MDX functions. We discussed generalities about the use of the function, and then undertook practice examples that focused on two basic uses of IIF() to meet hypothetical business requirements that mirrored needs we might find in the "real world." If you are joining the series with this article, please consider reading String / Numeric Functions: Introducing the IIF() Function to gain a general overview of the function before you delve into the multi-step exercise in sections below.

In this article, we will continue our examination of the IIF() function, focusing on more evolved uses of the function, within a more involved practice scenario. We will not rehash the introduction, discussion or syntax sections that we provided in our last article, except in situations where we wish to emphasize points from those sections in the context of our current activities. Our focus here will be to provide another hands-on illustration, where we can experience firsthand the capabilities that the function can offer, and to expose a sequential set of steps aimed at getting to a specific outcome in the support of a set of hypothetical business requirements.

As has been the case with most of my articles, we will introduce a business requirement as requested by a group of information consumers. After we discuss their needs in detail, we will begin a multi-step exercise that builds to a successful end result. Along with the introduction of the expressed business needs, this lesson will include:

  • Creation of a core query, upon which we will build our end solution;
  • Creation of interdependent calculated members, to provide requested measures that do not exist "natively" in the cube structure;
  • Use of the IIF() function, in conjunction with a member property to achieve intended behavior within a calculated member;
  • Addition of the VBA VAL() function, to convert the member property to a usable data type;
  • Addition of the FILTER() and ORDER() functions, to render a presentation that meets the needs of the intended audience;
  • A brief discussion of the results DataSets we obtain in each of the steps of the practice example.

MS SQL Archives

Latest Forum Threads
MS SQL Forum
Topic By Replies Updated
SQL 2005: SSIS: Error using SQL Server credentials poverty 3 August 17th, 07:43 AM
Need help changing table contents nkawtg 1 August 17th, 03:02 AM
SQL Server Memory confifuration bhosalenarayan 2 August 14th, 05:33 AM
SQL Server Primary Key and a Unique Key katty.jonh 2 July 25th, 10:36 AM