protected override string GetStringExpression()
{
var queryStringBuilder = new StringBuilder();
if (_withDeclarations.Any())
queryStringBuilder.AppendFormat("WITH {0} ", string.Join(" ", _withDeclarations));
queryStringBuilder.AppendFormat("SELECT {0} ", string.Join(", ", Axes));
if (InnerQuery == null)
queryStringBuilder.AppendFormat("FROM {0}", string.Join(", ", Cubes));
else
queryStringBuilder.AppendFormat("FROM ( {0} )", InnerQuery);
if (_whereClauseTuples.Any())
queryStringBuilder.AppendFormat(" WHERE {{ ( {0} ) }}", string.Join(", ", _whereClauseTuples));
return queryStringBuilder.ToString();
}