powerbi - SQL 到 DAX 的转换
问题描述
Power BI 新手,在 Dax 转换方面需要一些帮助。日期20191130正在通过另一个页面的切片器传递,所以我不确定如何设置我的 dax,以便阅读以下内容:
当前值
SELECT SUM(value) FROM Table
Where DateKey BETWEEN 20181201 AND 20191130
以前的值
SELECT SUM(value) FROM Table
Where DateKey BETWEEN 20171201 AND 20181130
(当前值 - 先前值)/(先前值)
解决方案
假设 Slicer Date 是 Date 格式,您将不得不创建两个不同的计算:
当前值:
Current Value =
VAR End1 = Table[SlicerDate]
VAR Start1 = DATE(YEAR(End1)-1,MONTH(End1),DAY(End1))+1
VAR End2 = DATE(YEAR(End1)-1,MONTH(End1),DAY(End1))
VAR Start2 = DATE(YEAR(End1)-2,MONTH(End1),DAY(End1))+1
RETURN CALCULATE(COUNT('Table'[Name]),'Table'[Datekey]>=Start1 && 'Table'[Datekey]<=End1)
以前的值:
Previous Value =
VAR End1 = Table[SlicerDate]
VAR Start1 = DATE(YEAR(End1)-1,MONTH(End1),DAY(End1))+1
VAR End2 = DATE(YEAR(End1)-1,MONTH(End1),DAY(End1))
VAR Start2 = DATE(YEAR(End1)-2,MONTH(End1),DAY(End1))+1
RETURN CALCULATE(COUNT('Table'[Name]),'Table'[Datekey]>=Start1 && 'Table'[Datekey]<=End1)
如果您的切片器日期是数字或文本格式:
当前值:
Current Value =
VAR End1 = Date(Left(Table[SlicerDate],4),Right(left(Table[SlicerDate],6),2),right(Table[SlicerDate],2)
VAR Start1 = DATE(YEAR(End1)-1,MONTH(End1),DAY(End1))+1
VAR End2 = DATE(YEAR(End1)-1,MONTH(End1),DAY(End1))
VAR Start2 = DATE(YEAR(End1)-2,MONTH(End1),DAY(End1))+1
RETURN CALCULATE(COUNT('Table'[Name]),'Table'[Datekey]>=Start1 && 'Table'[Datekey]<=End1)
以前的值:
Previous Value =
VAR End1 = Date(Left(Table[SlicerDate],4),Right(left(Table[SlicerDate],6),2),right(Table[SlicerDate],2)
VAR Start1 = DATE(YEAR(End1)-1,MONTH(End1),DAY(End1))+1
VAR End2 = DATE(YEAR(End1)-1,MONTH(End1),DAY(End1))
VAR Start2 = DATE(YEAR(End1)-2,MONTH(End1),DAY(End1))+1
RETURN CALCULATE(COUNT('Table'[Name]),'Table'[Datekey]>=Start1 && 'Table'[Datekey]<=End1)
希望这可以帮助。
推荐阅读
- java - 有几行的 jaro-winkler
- python - 您如何显示具有多行不同功能的输出以彼此相邻打印?
- angular - Angular 6 RxJS6 类型“void”不可分配给类型“ObservableInput<{}>”
- ios - Xcode 单元测试缺少某些项目类
- batch-file - 如何使用批处理文件获取 LAN 和 WLAN MAC 地址?
- redirect - 使用 .htaccess 重写 HUGO URL
- ldap - 是否可以在不使用盐的情况下配置 OpenLDAP Crypt 密码?
- css - 这个实现是否可以使用 css 网格?(显示:网格;仅限)
- excel - If 和 Countif 函数和切片器
- node.js - 当服务被 cors 策略阻止时如何修复:请求的资源上不存在“access-control-allow-origin”标头