back to article Hands on with MDX

Following our introduction to MDX (to be found here) this follow-up article is a get-you-started guide to using this powerful language to manipulate multi-dimensional data. The basics Relational databases store data in two-dimensional tables, a familiar concept that mimics grids of data on paper. Multi-dimensional data is …

COMMENTS

This topic is closed for new posts.
  1. Christo
    Happy

    Great Article

    I have to admit that MDX has always been a bit of nightmare for me to understand. Finally an article that explains the fundamentals without trying to wrap my brain into 5 million dimensions (pun intended).

    Great article!

  2. David S
    Thumb Up

    Interesting, if a little abrupt...

    Now this is an interesting subject, and I'm looking forward to learning a little more about a topic about which I've long suspected I ought to know more... One thing, though: the article seemed to end rather abruptly. I spent a good few seconds looking for a link to the next page! Any chance of an overview of what you're planning to cover on this subject? Maybe a "tune in tomorrow for..." line at the end would be nice, too...

    Otherwise, very interesting. Thanks!

  3. Anonymous Coward
    Boffin

    Grants

    SQL for arrays... Can I get a grant for developing peelers for potatoes?

    Where's the icon for blindingly obvious?

  4. Mark Whitehorn

    Re. Interesting, if a little abrupt...

    Hi David,

    Well spotted! Sorry about that, there was a technical hitch and only about two thirds of the article appeared initially.

    It is all there now; thanks for pointing out the error.

    Mark

  5. Mosha

    YTD

    Hi Mark

    You can improve the formula for computing year to date sales even more, if the Time dimension is marked as such. Then you don't need to specify Time.CurrentMember inside YTD, and the formula becomes

    Sum(YTD(), Measures.[Units Sold])

    Now, if we don't create this as calculated measure, but instead use utility dimension or attribute, which is the best practice for Time related calculations, this could be simplified even more:

    Sum(YTD())

    Two words instead of seven :)

    Mosha.

  6. Mark Whitehorn

    Re. YTD

    For those who don't recognise the name, 'Mosha' is Mosha Pasumansky; without doubt the world's leading authority on the language. The book mentioned in the article (FastTrack to MDX) is one that Mosha and I wrote in conjunction with Robert Zare. I have learned over the years that Mosha is always right about MDX (and lots of other stuff as well) and, if you get into MDX, his blog at:

    http://sqljunkies.com/WebLog/mosha/

    is well worth studying.

    He is, as always, quite correct that we can reduce this MDX down to two words which emphasizes still further the power of this language. So we see an analytical statement that in SQL would take serious effort being achieved with almost Zen-like ease in MDX. This is not to say that MDX is therefore better than SQL; the two have strengths in different areas; SQL for transactional querying, MDX for analytical. But it does emphasise that MDX is worth learning.

This topic is closed for new posts.