While you are writing and testing MDX queries in Microsoft SQL Server management Studio (SSMS), how many times you find yourself need to open the Visual Studio project in SQL Server Data Tools (SSDT) just to find out the dimensionality of a measure group, or the calculation formula for a… Read more
In Adventure Works cube 2008 or 2012, in the Dimension Usage tab, you will see that many intercepts of measure groups and dimensions are blank. To a specific measure group, the dimensions that have blank intercepts are un-related to the measure group. As a matter of fact you will see… Read more
Using variables in SSIS packages can make your ETL process more dynamic and respond to different scenarios during runtime.
Not only we can use variables, we also have many different ways to set values for our variables. This is all good news for developers. But like many things in real… Read more
The book’s link is here, SQL Server 2012 Reporting Services Blueprints.
This book is a step-by-step, task-driven tutorial that goes straight to the practical development of reporting skills, explaining actions as they are taken. If you perform the role of report development using SSRS in your job and you… Read more
The WordPress.com stats helper monkeys prepared a 2013 annual report for this blog.
Here’s an excerpt:
The Louvre Museum has 8.5 million visitors per year. This blog was viewed about 120,000 times in 2013. If it were an exhibit at the Louvre Museum, it would take about 5 days for…
In this blog, I’d like to give special thanks to the people below who have taken time to write reviews for my book MDX with SSAS 2012 Cookbook.
“It helped me a lot in my projects and helped me advanced my MDX skill in a very short time.”
My publisher recently forwarded me a question from a reader about the “Using the PROPERTIES() function to retrieve data from attribute relationships” section in Chapter 1 of the book “MDX with SSAS 2012 Cookbook”.
“The following code seems to always return true for [Is Numeric],… Read more
When we are learning MDX, we unavoidably have to deal with the tools we use. Adding confusions about the behaviors of the different tools to our still fragile understanding of the MDX language itself can create huge frustration for learners.
Here is one of them. In developing SSRS reports, we… Read more
A co-worker recently worked on a SSRS report and wanted to use a specific manager’s team for testing. The Manager is a filter for the SSRS report and can take a fully-qualified member name as the default value.
Using the Employee dimension in Adventure Works cube as an example, a… Read more
I came across Vincent Rainardi’s blog, and thought I’d share it with the readers.
I’d also like to thank Vincent for writing up the review so quickly.
I browsed through Vincent’s blog, and found that he authored this book:
When tuning SQL queries, I find that I use the following three SET options quite often.
set showplan_xml on
When showplan_xml option is ON for a session, the execution of SQL queries in the same session will only show the estimated execution plan. No query results will be generated.
Here… Read more
A co-worker recently asked me why she would get timeout when updating a column in a big table. This column will be updated to 0 (zero) because a default value of 0 (zero) constrain is now added to the table.
The table has over 40 million records. Although I didn’t… Read more
In Chapter 1 of the book MDX with SSAS 2012 Cookbook, in the first recipe “Putting data on x and y axes”, I have given a simple example to show how easy it is to use the CROSSJOIN function to "combine" more than one hierarchy into the COLUMNS and… Read more
MDX with SSAS 2012 Cookbook
by Sherry Li and Tomislav Piasevoli
Packt Publishing 2013
The book is now available in both paperback and eBook format. You can order copies from Amazon, Barnes & Nobel, Packt Publishing. It is also available on Safari Books Online.
Hope you will find the book… Read more
I don’t have a definition of what is considered a large SQL table. I am pretty sure, however, that a table with 20+ GB data plus another 20+ GB for a few indices is not a small table anymore.
I have been absent from this blog for the last few months. For those who have noticed, I’d like to offer my apology and also provide an excuse. I hope that co-authoring a book is a good enough excuse.
For the last few months, I have been working on the… Read more
I had a post last month, MDX #25 – Slicer or Sub-Cube?, verifying that the query context did not change with the subquery.
This can pose problems if you want to use the Time-series functions in MDX. Two functions come into mind, YTD() and PeriodsToDate().
Both functions need to… Read more
Many function names in MDX are very family-friendly. Children, parent, ancestors, descendants, ascendants, are all terms we often use in telling family stories. Except ascendants. I never really understand what this word means until I ran into this word in MDX.
Ancestors VS. Ascendants
I’ve blogged about the Properties() function before.
The Properties() function is used to explore the attribute relationships in a dimension.
If… Read more
Slicer, Axes and Calculations Can All Filter Data in MDX
Every developer with SQL background knows how the WHERE clause works. You put some condition in the WHERE clause, such as TheDate = Yesterday (pseudo code), and it will only return data for yesterday.
Not so straightforward in MDX. We… Read more