Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/powerbi/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
Powerbi SQL到DAX的转换_Powerbi_Dax - Fatal编程技术网

Powerbi SQL到DAX的转换

Powerbi SQL到DAX的转换,powerbi,dax,Powerbi,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 当前值-上一个值/上一个值假定切片

刚接触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

当前值-上一个值/上一个值假定切片器日期为日期格式,则必须创建两个不同的计算:

SELECT SUM(value) FROM Table
Where DateKey BETWEEN 20171201 AND 20181130
当前值:

 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)
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)
如果切片器日期为数字或文本格式:

当前值:

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 = 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 = 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)
希望这有帮助