Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/tfs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Date MDX:如何在MDX查询中获取两个日期之间的周数_Date_Tfs_Mdx_Olap Cube - Fatal编程技术网

Date MDX:如何在MDX查询中获取两个日期之间的周数

Date MDX:如何在MDX查询中获取两个日期之间的周数,date,tfs,mdx,olap-cube,Date,Tfs,Mdx,Olap Cube,我希望在MDX查询中以两个日期之间的列形式获取周数 例如,如果我输入以下日期:2015-01-01和2015-02-01我想得到以下信息: 截至1月1日的一周、截至1月8日的一周、截至1月15日的一周、截至1月22日的一周 我使用“Filter”方法创建了此MDX查询,但它不起作用: WITH SET [WeeksBetweenDates] AS Filter([Date].[Year - Week - Date Hierarchy].[Week], [Date].[Year - We

我希望在MDX查询中以两个日期之间的列形式获取周数

例如,如果我输入以下日期:2015-01-012015-02-01我想得到以下信息:

截至1月1日的一周、截至1月8日的一周、截至1月15日的一周、截至1月22日的一周

我使用“Filter”方法创建了此MDX查询,但它不起作用:

    WITH SET [WeeksBetweenDates] AS

Filter([Date].[Year - Week - Date Hierarchy].[Week],
[Date].[Year - Week - Date Hierarchy].CurrentMember.Member_Value >= [Date].[Year - Week - Date Hierarchy].[Week].&[2015-01-01T00:00:00]
AND [Date].[Year - Week - Date Hierarchy].CurrentMember.Member_Value <= [Date].[Year - Week - Date Hierarchy].[Week].&[2015-02-01T00:00:00])

SELECT [WeeksBetweenDates] ON COLUMNS
FROM [Team System]
将[WeeksBetweenDates]设置为
筛选器([Date].[Year-Week-Date Hierarchy].[Week],
[Date].[Year-Week-Date Hierarchy].CurrentMember.Member_值>=[Date].[Year-Week-Date Hierarchy].[Week].&[2015-01-01T00:00:00]

和[Date].[Year-Week-Date Hierarchy].CurrentMember.Member_Value您应该将日期定义为子多维数据集切片(
{[Date1]:[Date2]}
),这将大大提高查询性能并使代码更加透明(根据我们的TFS进行测试):

要通过使用层次结构使其工作,您应该更正
[Date].[Year-Week-Date Hierarchy].[Week].&[2015-01-01T00:00:00]
到[Date].[Year-Week-Date Hierarchy].[Date].[2015-01-01T00:00:00]

谢谢你的评论,但这个查询也不起作用。如果我运行这个查询,我会得到0列。:(@konzolcowboy重要的一点是,如果
{[Date1]中的任何一个日期:[Date2]}
不存在于您的多维数据集中,则引擎会将其评估为null,有效方式如下:
{null:[Date2]}
…然后将其评估为开放式,即直到
[Date2]
select
{
    [Date].[Week].members
} on 0
from ( select {
               [Date].[Date].&[2015-01-01T00:00:00]
               :
               [Date].[Date].&[2015-02-01T00:00:00]
              } on 0
from [Team System])