获取2个值之间的数据,其中powerBI中的条件

时间:2017-09-28 09:54:35

标签: powerbi dax

我是PowerBI的新手,我需要像你这样的专家的帮助..

我正在连接MySQL数据库和geeting数据。

我附加了从表格视觉中导出的csv here的示例数据。

对于每个报价,我有0.1到2.0版本(即0.1,0.2,0.3 ...... 0.9,1.0,1.1,...... 2.0)。即每个报价可以有0.1到2.1之间的多个版本

我想要的桌子应该是,

  1. 我只想显示版本(0.1到< = 1.0)版本中版本1.0的那些版本 我想显示每个报价的最低版本和最高版本(1.0)以及最小版本日期和版本1.0日期之间的天数
  2. 我只想显示版本(1.1到< = 2.0)版本中版本2.0的那些quoatations 我想显示每个报价的最低版本和最高版本(2.0)以及最小版本日期和版本2.0日期之间的天数
  3. 示例输出:

    1. 我想在版本(0.1到< = 1.0)版本中显示版本1.0的版本。我想显示每个报价的最小版本和最大版本(1.0)以及最小版本日期和版本1.0日期之间的天数
    2.  Quation#  |  min version | max version|  duration 
       quote1       0.1              1.0           10 days
        quote3       0.3              1.0          3 days
      
      1. 我想在版本(1.1到< = 2.0)版本中显示版本2.0的quoatations。我想显示每个报价的最低版本和最高版本(2.0)以及最小版本日期和版本2.0日期之间的天数
      2. Quation#  |  min version | max version|  duration  
        quote2       1.1              2.0          4 days 
        quote3       1.3              2.0          8 days
        

        如果获得输出,请分享pbix文件。

        请帮助我实现这一目标。非常感谢提前

2 个答案:

答案 0 :(得分:1)

按照以下步骤操作:

根据版本制作小组:

enter image description here 这也可以使用DAX进行,但这样更容易(如果你想我可以发送DAX公式)。

创建以下度量:

Duration = 
DATEDIFF (
CALCULATE (
    MIN ( 'sample'[businessDate] ),
    ALLSELECTED ( 'sample'[businessDate] )
),
CALCULATE (
    MAX ( 'sample'[businessDate] ),
    ALLSELECTED ( 'sample'[businessDate] )
),
DAY)

在表格中添加以下字段: QuoteNo - Don总结 版本 - 第一版(重命名为min版) 版本 - 最新版本(重命名为最大版本) 持续时间 versions(group) - 减小列的大小,直到被隐藏  enter image description here 最终版本:

将此度量添加到您的表中,并将其添加到表结果的过滤器上,如下所示:

Validation =
IF (
    MAX ( 'sample'[version] ) = INT ( MAX ( 'sample'[version] ) )
       = TRUE (),
    1,
    0
 )

enter image description here

答案 1 :(得分:0)

您只需要在查询中添加第三个比较,以检查当前Quote#是否有一行,版本为1.0。考虑到这一点,我会将您当前的查询编辑为以下内容。

Bucket = 'prod_check dw_proposal'[version] >= 0.1 &&
    'prod_check dw_proposal'[version] < 1.1 &&
    CALCULATE(COUNTROWS('prod_check dw_proposal'), 
        FILTER('prod_check dw_proposal', 
            'prod_check dw_proposal'[Quote#] = EARLIER('prod_check dw_proposal'[Quote#]) && 
            'prod_check dw_proposal'[version] = 1.0
        )
    ) = 1

如果公式的任何部分令人困惑,请告诉我。