zoukankan      html  css  js  c++  java
  • Filter函数条件判断

    select
        Filter(
            [Time].[YQMD].[Quarter].Members,
            [Measures].[Unit Sales] >750
        )*[Measures].[Unit Sales] on 0
    ,{[Customer].[Customer].[AZ], [Customer].[Customer].[NM],
    [Customer].[Customer].[UT]} on 1
    from [Sales]
    image
    疑问:什么已经指定了过滤条件[Measures].[Unit Sales]>750 ,为什么有这么多小于750的数据也返回了呢?看下列查询语句:

    select
        Filter(
            [Time].[YQMD].[Quarter].Members,
            [Measures].[Unit Sales] >750
        )*[Measures].[Unit Sales] on 0
    ,[Customer].[Customer].members on 1
    from [Sales]
    image

    看第一列第一行的All每一个的Unit Sales都符合过滤条件

    Filter(
            [Time].[YQMD].[Quarter].Members,
            [Measures].[Unit Sales] >750
        )

    这个Filter过滤语句语义:返回销售额大于750的所有季度。先计算Filter函数,得到符合条件的集合,然后再跟axis(1)做单元值拆分运算。

    这是跟解析顺序有关的:
    from(求值)——》where with Set(或者聚合函数)——》axis(求值,每个轴)——》Result Cell(得到单元值)

  • 相关阅读:
    编程这几天出现的很2的问题!!!
    2020 8 1 每日总结
    2020 8 6 每日总结
    2020 8 7 读后感
    2020 8 4 每日总结
    2020 7 30 每日总结
    2020 8 3 每日总结
    2020 8 8 每日总结
    2020 8 2 每周总结
    2020 8 5 每日总结
  • 原文地址:https://www.cnblogs.com/timy/p/1613719.html
Copyright © 2011-2022 走看看