Bill Pearson


Stairway to MDX

Stairway to MDX - Level 2: The Ordinal Function

Business Intelligence Architect Bill Pearson introduces the MDX Ordinal Function, as a means for generating lists and for conditionally presenting calculations. He also demonstrates the use of the function in creating datasets to support report parameter picklists.

You rated this post out of 5. Change rating

2019-03-26 (first published: )

19,902 reads

Stairway to MDX

Stairway to MDX - Level 3: The Order() Function

The Order() function provides the 'hierarchized' sorts you need for reports and applications using MDX. In this Step, Business Intelligence Architect Bill Pearson explores using the versatile Order() function for providing dataset sorts that respect dimensional hierarchies.

You rated this post out of 5. Change rating

2019-03-26 (first published: )

13,013 reads

Stairway to MDX

Stairway to MDX - Level 5: Members, and an Introduction to the MDX Members Functions

Bill explains what is meant by a 'Member' and 'Member function' in MDX. A member is an item in a dimension that include the 'measures' which are the values of the attributes that belong to a dimension. 'Measures' are themselves members of a dimension called the “measures” dimension. MDX has a set of functions, known as member functions, each of which allow us to perform operations upon any member of a dimension

You rated this post out of 5. Change rating

2019-03-26 (first published: )

9,482 reads

Stairway to MDX

Stairway to MDX - Level 12: : MDX Time/Date Series Functions: OpeningPeriod() and ClosingPeriod() Functions

BI Architect Bill Pearson continues with the second of a set of articles surrounding a group of MDX functions specialized to support the analysis of data within the context of time / date. In this article, we will explore the OpeningPeriod() and ClosingPeriod() functions, and get hands-on practice with each in meeting sample business requirements.

You rated this post out of 5. Change rating

2015-07-22

4,845 reads

Stairway to MDX

Stairway to MDX - Level 11: MDX Time/Date Series Functions: PeriodsToDate() and Derivative Shortcut Functions

BI Architect Bill Pearson launches a set of articles surrounding a group of MDX functions specialized to meet the pervasive business need to analyze data within the context of time / date. In this article, we will overview the PeriodsToDate() function, and then we will introduce "shortcut" functions that are based upon it.

You rated this post out of 5. Change rating

2015-06-17

9,808 reads

Stairway to MDX

Stairway to MDX - Level 10: “Relative” Member Functions: .CurrentMember, .PrevMember, and .NextMember

SSAS Maestro, SQL Server MVP and Business Intelligence Architect Bill Pearson introduces three “major players” within the MDX “relative” functions. These basic, but highly employed, functions include the .CurrentMember, .PrevMember and .NextMember functions.

You rated this post out of 5. Change rating

2013-06-12

7,575 reads

Blogs

What DevOps Look Like in Microsoft Fabric

By

Microsoft Fabric (not to be confused with the more general term “fabric” in DevOps)...

T-SQL Tuesday #192: What career risks have you taken?

By

I’m honored to be hosting T-SQL Tuesday — edition #192. For those who may...

AI: Blog a Day – Day 3: LLM Models – Open Source vs Closed Source

By

Continuing from Day 2 , we learned introduction on Generative AI and Agentic AI,...

Read the latest Blogs

Forums

Azure Synapse database refresh

By Sreevathsa Mandli

Hi Team, I am trying to refresh the Azure Synapse Dedicated pool from production...

Ready to launch your next big game?

By maryelbert

Looking for a creative and experienced mobile game development company that brings your game...

how to write this query?

By water490

hi everyone I am not sure how to write the query that will produce...

Visit the forum

Question of the Day

Fun with JSON I

I have some data in a table:

CREATE TABLE #test_data
(
    id INT PRIMARY KEY,
    name VARCHAR(100),
    birth_date DATE
);

-- Step 2: Insert rows  
INSERT INTO #test_data
VALUES
(1, 'Olivia', '2025-01-05'),
(2, 'Emma', '2025-03-02'),
(3, 'Liam', '2025-11-15'),
(4, 'Noah', '2025-12-22');
If I run this query, how many rows are returned?
SELECT *
FROM OPENJSON(
     (
         SELECT t.* FROM #test_data AS t FOR JSON PATH
     )
             ) t;

See possible answers