【问题标题】:Return data between two dates from a MDX Query SSAS从 MDX 查询 SSAS 返回两个日期之间的数据
【发布时间】:2020-02-26 05:59:55
【问题描述】:

我正在尝试过滤两个日期范围之间的数据。它的数据类型是datetime。 我已经通过 SSAS 中的查询设计器生成了查询。

以下是我拥有的数据集示例:

度量值组和维度的示例图片:

我使用过的示例过滤器:

生成的 MDX 查询:

`SELECT NON EMPTY { [Measures].[Status] } ON COLUMNS, NON EMPTY { ([Lobby].[Added Local Time].[Added Local Time].ALLMEMBERS ) } DIMENSION PROPERTIES MEMBER_CAPTION, MEMBER_VALUE, MEMBER_UNIQUE_NAME ON ROWS FROM ( SELECT ( [Lobby].[Added Local Time].&[2020-01-02T10:32:37.806667] : [Lobby].[Added Local Time].&[2020-02-19T13:43:13.833333] ) ON COLUMNS FROM ( SELECT ( { [Lobby].[Status].[All] } ) ON COLUMNS FROM [LTS KROI DEMO])) WHERE ( [Lobby].[Status].[All] ) CELL PROPERTIES VALUE, BACK_COLOR, FORE_COLOR, FORMATTED_VALUE, FORMAT_STRING, FONT_NAME, FONT_SIZE, FONT_FLAGS`

问题:

问题是它没有根据给定的datetime 范围过滤数据。两者都没有给出任何错误。

如果我只使用过滤器 - 状态一个特定的值而不给出所有它都可以正常工作。

【问题讨论】:

    标签: sql sql-server ssas mdx cube


    【解决方案1】:

    请尝试过滤功能。它会更慢,但应该可以工作,因为您采用的方法仅在存在确切日期时间的情况下才有效

    SELECT { [Measures].[Status] } ON COLUMNS, NON EMPTY { 
    Filter(
     [Lobby].[Added Local Time].[Added Local Time].ALLMEMBERS,
     [Lobby].[Added Local Time].CurrentMember.MemberValue >=  CDate("2020-01-02 10:32:37.806667") 
     and [Lobby].[Added Local Time].CurrentMember.MemberValue <= CDate("2020-02-19 13:43:13.833333")
    ) 
    } DIMENSION PROPERTIES MEMBER_CAPTION, MEMBER_VALUE, MEMBER_UNIQUE_NAME ON ROWS 
    FROM [LTS KROI DEMO]
    CELL PROPERTIES VALUE
    
    

    【讨论】:

    • 这给出了以下错误:查询准备失败。类型不匹配。 (Microsoft SQL Server 2016 Analysis Services)并且我尝试在日期时间之间添加 T 似乎也没有用
    【解决方案2】:

    通过遵循以下答案,我能够得到想要的结果 @GregGalloway 通过对我传递的参数进行小的更改 日期。当我删除将日期传递给 Cdate 函数的时间时 它工作正常。

    SELECT { [Measures].[Status] } ON COLUMNS, NON EMPTY { 
    Filter(
     [Lobby].[Added Local Time].[Added Local Time].ALLMEMBERS,
     [Lobby].[Added Local Time].CurrentMember.MemberValue >=  CDate("2020-01-02") 
     and [Lobby].[Added Local Time].CurrentMember.MemberValue <= CDate("2020-02-19")
    ) 
    } DIMENSION PROPERTIES MEMBER_CAPTION, MEMBER_VALUE, MEMBER_UNIQUE_NAME ON ROWS 
    FROM [LTS KROI DEMO]
    CELL PROPERTIES VALUE
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-01-01
      • 1970-01-01
      • 2021-01-08
      • 2022-11-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多