Sibeesh Passion

Top Menu

  • Home
  • Search
  • About
  • Privacy Policy

Main Menu

  • Articles
    • Azure
    • .NET
    • IoT
    • JavaScript
    • Career Advice
    • Interview
    • Angular
    • Node JS
    • JQuery
    • Knockout JS
    • Jasmine Framework
    • SQL
    • MongoDB
    • MySQL
    • WordPress
  • Contributions
    • Medium
    • GitHub
    • Stack Overflow
    • Unsplash
    • ASP.NET Forum
    • C# Corner
    • Code Project
    • DZone
    • MSDN
  • Social Media
    • LinkedIn
    • Facebook
    • Instagram
    • Twitter
  • YouTube
    • Sibeesh Venu
    • Sibeesh Passion
  • Awards
  • Home
  • Search
  • About
  • Privacy Policy

logo

Sibeesh Passion

  • Articles
    • Azure
    • .NET
    • IoT
    • JavaScript
    • Career Advice
    • Interview
    • Angular
    • Node JS
    • JQuery
    • Knockout JS
    • Jasmine Framework
    • SQL
    • MongoDB
    • MySQL
    • WordPress
  • Contributions
    • Medium
    • GitHub
    • Stack Overflow
    • Unsplash
    • ASP.NET Forum
    • C# Corner
    • Code Project
    • DZone
    • MSDN
  • Social Media
    • LinkedIn
    • Facebook
    • Instagram
    • Twitter
  • YouTube
    • Sibeesh Venu
    • Sibeesh Passion
  • Awards
  • Linux Azure Function Isolated Dot Net 9 YAML Template Deployment

  • Build, Deploy, Configure CI &CD Your Static Website in 5 mins

  • Post Messages to Microsoft Teams Using Python

  • Get Azure Blob Storage Blob Metadata Using PowerShell

  • Deploy .net 6 App to Azure from Azure DevOps using Pipelines

MDX Query
Home›Microsoft ADOMD›MDX Query›Filters in MDX Queries

Filters in MDX Queries

By SibeeshVenu
July 6, 2015
1782
0
Share:

Introduction

Today we will learn about filter conditions in MDX queries. There are so many conditions in MDX as we have SQL. I am going to discuss most used filter conditions in MDX. I hope you will like it.

Background

For the past few days I am working on the MDX queries. Since my applications data source were ADOMD data source, It was must to learn about MDX queries. If you are new to ADOMD, you can find out some tips here: ADOMD Tips

What is MDX?

Before going to start, we will see what MDX is?

  • MDX stands for Multidimensional Expression
  • It is a query language for OLAP databases like SQL for relational databases
  • It is also a calculation language
  • Its syntax is similar to spreadsheet formulas
  • If you are completely new to MDX, you can read basics here

    Expressions and Equivalent in MDX

    Now we will use this conditions in the MDX queries.I hope you are aware of MDX query basics now.

    MDX Filter Expression Examples

    To Check whether dimension value is empty
    To check whether a dimension value is empty or not, you need to add a filter condition as follows.
    [sql]
    {FILTER([My Dimension Group].[Dimension Name].[Dimension Name], Trim([My Dimension Group].[Dimension Name].CurrentMember.Name) = ”)}
    [/sql]

    To Check whether dimension value is Not Empty
    To check whether a dimension value is not empty or not, you need to add a filter condition as follows.
    [sql]
    {FILTER([My Dimension Group].[Dimension Name].[Dimension Name], Trim([My Dimension Group].[Dimension Name].CurrentMember.Name) <> ”)}
    [/sql]

    To Check whether dimension value Contains a particular value
    To check whether a dimension value Contains a particular value, you need to add a filter condition as follows.
    [sql]
    {FILTER([My Dimension Group].[Dimension Name].[Dimension Name], Instr([My Dimension Group].[Dimension Name].CurrentMember.Name, ‘My String Value’) > 0)}
    [/sql]

    To Check whether dimension value Does Not Contains a particular value
    To check whether a dimension value Does Not Contains a particular value, you need to add a filter condition as follows.
    [sql]
    -{FILTER([My Dimension Group].[Dimension Name].[Dimension Name], Instr([My Dimension Group].[Dimension Name].CurrentMember.Name, ‘My String Value’) > 0)}
    [/sql]

    To Check whether dimension value Starts With a particular value
    To check whether a dimension value Starts With a particular value, you need to add a filter condition as follows.
    [sql]
    {FILTER([My Dimension Group].[Dimension Name].[Dimension Name], Left([My Dimension Group].[Dimension Name].CurrentMember.Name, 5) = ‘My String Value’)}
    [/sql]

    To Check whether dimension value Ends With a particular value
    To check whether a dimension value Ends With a particular value, you need to add a filter condition as follows.
    [sql]
    {FILTER([My Dimension Group].[Dimension Name].[Dimension Name], Right([My Dimension Group].[Dimension Name].CurrentMember.Name, 5) = ‘My String Value’)}
    [/sql]

    To Check whether dimension value Equal a particular value
    To check whether a dimension value Equal a particular value, you need to add a filter condition as follows.
    [sql]
    {FILTER([My Dimension Group].[Dimension Name].[Dimension Name], [My Dimension Group].[Dimension Name].CurrentMember.Name = ‘My String Value Carolina’)}
    [/sql]

    To Check whether dimension value is NULL
    To check whether a dimension value is NULL, you need to add a filter condition as follows.
    [sql]
    {FILTER([My Dimension Group].[Dimension Name].[Dimension Name], [Measures].[Mesure Name] = NULL)}
    [/sql]

    To Check whether dimension value is NOT NULL
    To check whether a dimension value is NOT NULL, you need to add a filter condition as follows.
    [sql]
    NON EMPTY([My Dimension Group].[Dimension Name].[Dimension Name])
    [/sql]

    Following are the examples of queries which uses above mentioned expressions.

    Query 1
    [sql]

    SELECT {[Measures].[Mesure Name]} ON COLUMNS,
    ({FILTER([My Dimension Group].[Dimension Name].[Dimension Name], Trim([My Dimension Group].[Dimension Name].CurrentMember.Name) = ”)}) ON ROWS
    FROM [My Cube Name]

    [/sql]

    Query 2
    [sql]
    SELECT {[Measures].[Mesure Name]} ON COLUMNS,
    ({FILTER([My Dimension Group].[Dimension Name].[Dimension Name], Instr([My Dimension Group].[Dimension Name].CurrentMember.Name, ‘My String Value’) > 0)}) ON ROWS
    FROM [My Cube Name]
    [/sql]

    Query 3
    [sql]
    SELECT {[Measures].[Mesure Name]} ON COLUMNS,
    ({FILTER([My Dimension Group].[Dimension Name].[Dimension Name], Left([My Dimension Group].[Dimension Name].CurrentMember.Name, 5) = ‘My String Value’)}) ON ROWS
    FROM [My Cube Name]
    [/sql]

    Query 4
    [sql]
    SELECT {[Measures].[Mesure Name]} ON COLUMNS,
    ({FILTER([My Dimension Group].[Dimension Name].[Dimension Name], Right([My Dimension Group].[Dimension Name].CurrentMember.Name, 5) = ‘My String Value’)}) ON ROWS
    FROM [My Cube Name]
    [/sql]

    Query 5
    [sql]
    SELECT {[Measures].[Mesure Name]} ON COLUMNS,
    ({FILTER([My Dimension Group].[Dimension Name].[Dimension Name], [My Dimension Group].[Dimension Name].CurrentMember.Name = ‘My String Value Carolina’)}) ON ROWS
    FROM [My Cube Name]
    [/sql]

    Query 6
    [sql]
    SELECT {[Measures].[Mesure Name]} ON COLUMNS,
    ({FILTER([My Dimension Group].[Dimension Name].[Dimension Name], [Measures].[Mesure Name] = NULL)}) ON ROWS
    FROM [My Cube Name]
    [/sql]

    Query 7
    [sql]
    SELECT {[Measures].[Mesure Name]} ON COLUMNS,
    NON EMPTY([My Dimension Group].[Dimension Name].[Dimension Name]) ON ROWS
    FROM [My Cube Name]
    [/sql]

    That is for now 🙂

    Conclusion

    I hope someone found this article useful. Please share me your valuable thoughts and comments. Your feedback is always welcomed.

    Thanks in advance. Happy coding!

    Kindest Regards
    Sibeesh Venu

    TagsDatabaseDBAFilter Conditions in MDXFiltering in MDXFree source codeIntermediateMDXMDX FilterMDX Queryms-sql-serverOLAPSQL-server-2005SQL-Server-2008
    Previous Article

    Transpose Row Values To Column In Excel

    Next Article

    How to read RESX file in C#

    0
    Shares
    • 0
    • +
    • 0
    • 0
    • 0

    SibeeshVenu

    I am Sibeesh Venu, an engineer by profession and writer by passion. Microsoft MVP, Author, Speaker, Content Creator, Youtuber, Programmer.

    Related articles More from author

    • DatabaseInterviewSQL

      SQL Interview Questions And Answers

      October 24, 2015
      By SibeeshVenu
    • MDX QuerySSAS

      Find Datatype Of Each Measures In SSAS MDX Queries

      February 22, 2016
      By SibeeshVenu
    • Database Corrupted
      SQL

      Learn to Repair Corrupt MDF File with Perfection

      September 22, 2017
      By Andrew Jackson
    • Adding end points in Azure Virtual Machine
      AzureDatabaseMySQLVirtual MachineWordpress

      Link Your MySQL Database To Azure Virtual Machine And WordPress

      September 24, 2015
      By SibeeshVenu
    • Excel Export In MDX
      .NETASP.NETMDX QuerySQL

      Export MDX Result As Excel

      October 28, 2015
      By SibeeshVenu
    • Back Up And Restore Your Old MySQL Database to New Database
      AzureDatabaseMySQLVirtual Machine

      Back Up your ClearDB and restore in Azure Virtual Machine MySQL

      September 18, 2015
      By SibeeshVenu
    0

    My book

    Asp Net Core and Azure with Raspberry Pi Sibeesh Venu

    YouTube

    MICROSOFT MVP (2016-2022)

    profile for Sibeesh Venu - Microsoft MVP

    Recent Posts

    • Linux Azure Function Isolated Dot Net 9 YAML Template Deployment
    • Build, Deploy, Configure CI &CD Your Static Website in 5 mins
    • Easily move data from one COSMOS DB to another
    • .NET 8 New and Efficient Way to Check IP is in Given IP Range
    • Async Client IP safelist for Dot NET
    • Post Messages to Microsoft Teams Using Python
    • Get Azure Blob Storage Blob Metadata Using PowerShell
    • Deploy .net 6 App to Azure from Azure DevOps using Pipelines
    • Integrate Azure App Insights in 1 Minute to .Net6 Application
    • Azure DevOps Service Connection with Multiple Azure Resource Group

    Tags

    Achievements (35) Angular (14) Angular 5 (7) Angular JS (15) article (10) Article Of The Day (13) Asp.Net (14) Azure (65) Azure DevOps (10) Azure Function (10) Azure IoT (7) C# (17) c-sharp corner (13) Career Advice (11) chart (11) CSharp (7) CSS (7) CSS3 (6) HighChart (10) How To (9) HTML5 (10) HTML5 Chart (11) Interview (6) IoT (11) Javascript (10) JQuery (82) jquery functions (9) JQWidgets (15) JQX Grid (17) Json (7) Microsoft (8) MVC (20) MVP (9) MXChip (7) News (18) Office 365 (7) Products (10) SQL (20) SQL Server (15) Visual Studio (10) Visual Studio 2017 (7) VS2017 (7) Web API (12) Windows 10 (7) Wordpress (9)
    • .NET
    • Achievements
    • ADO.NET
    • Android
    • Angular
    • Arduino
    • Article Of The Day
    • ASP.NET
    • Asp.Net Core
    • Automobile
    • Awards
    • Azure
    • Azure CDN
    • azure devops
    • Blockchain
    • Blog
    • Browser
    • C-Sharp Corner
    • C#
    • Career Advice
    • Code Snippets
    • CodeProject
    • Cognitive Services
    • Cosmos DB
    • CSS
    • CSS3
    • Data Factory
    • Database
    • Docker
    • Drawings
    • Drill Down Chart
    • English
    • Excel Programming
    • Exporting
    • Facebook
    • Fun
    • Gadgets
    • GitHub
    • GoPro
    • High Map
    • HighChart
    • How to
    • HTML
    • HTML5
    • Ignite UI
    • IIS
    • Interview
    • IoT
    • JavaScript
    • JQuery
    • jQuery UI
    • JQWidgets
    • JQX Grid
    • Json
    • Knockout JS
    • Linux
    • Machine Learning
    • Malayalam
    • Malayalam Poems
    • MDX Query
    • Microsoft
    • Microsoft ADOMD
    • Microsoft MVP
    • Microsoft Office
    • Microsoft Technologies
    • Microsoft Windows
    • Microsoft Windows Server
    • Mobile
    • MongoDB
    • Monthly Winners
    • MVC
    • MVC Grid
    • MySQL
    • News
    • Node JS
    • npm
    • Number Conversions
    • October 2015
    • Office 365
    • Office Development
    • One Plus
    • Outlook
    • Page
    • PHP
    • Poems
    • PowerShell
    • Products
    • Q&A
    • Raspberry PI
    • React
    • SEO
    • SharePoint
    • Skype
    • Social Media
    • Software
    • Spire.Doc
    • Spire.PDF
    • Spire.XLS
    • SQL
    • SQL Server
    • SSAS
    • SSMS
    • Storage In HTML5
    • Stories
    • Third Party Software Apps
    • Tips
    • Tools
    • Translator Text
    • Uncategorized
    • Unit Testing
    • UWP
    • VB.Net
    • Videos
    • Virtual Machine
    • Visual Studio
    • Visual Studio 2017
    • Wamp Server
    • Web API
    • Web Platform Installer
    • Webinars
    • WebMatrix
    • Windows 10
    • Windows 7
    • Windows 8.1
    • Wordpress
    • Writing

    ABOUT ME

    I am Sibeesh Venu, an engineer by profession and writer by passion. Microsoft MVP, Author, Speaker, Content Creator, Youtuber, Programmer. If you would like to know more about me, you can read my story here.

    Contact Me

    • info@sibeeshpassion.com

    Pages

    • About
    • Search
    • Privacy Policy
    • About
    • Search
    • Privacy Policy
    © Copyright Sibeesh Passion 2014-2025. All Rights Reserved.
    Go to mobile version