PowerPivotDAXfunctions中文简述.docx
《PowerPivotDAXfunctions中文简述.docx》由会员分享,可在线阅读,更多相关《PowerPivotDAXfunctions中文简述.docx(21页珍藏版)》请在冰豆网上搜索。
![PowerPivotDAXfunctions中文简述.docx](https://file1.bdocx.com/fileroot1/2023-2/9/f1a2a15a-3edc-4dc9-951c-e99e5bf6513b/f1a2a15a-3edc-4dc9-951c-e99e5bf6513b1.gif)
PowerPivotDAXfunctions中文简述
PowerPivotDAXfunctions-中文简述
●日期和时间函数
DATE(,,)
以datetime格式返回指定的日期。
DATEVALUE(date_text)
将文本形式的日期转换为日期时间格式的日期。
DAY()
返回月中的第几天,即一个1到31之间的数字。
EDATE(,)
返回在开始日期之前或之后指示的月数的日期。
使用EDATE可以计算与发行日属于月中同一天的到期日期。
EOMONTH(,)
返回指定月份数之前或之后的月份的最后一天的日期,该日期采用datetime格式。
EOMONTH可用于计算处于月份最后一天的到期日期。
HOUR()
将小时返回为从0(12:
00A.M.)到23(11:
00P.M.)的数字。
MINUTE()
将分钟作为0到59之间的数字返回,给出日期和时间值。
MONTH()
将月份返回为从1(1月)到12(12月)的数字。
NOW()
以datetime格式返回当前日期和时间。
SECOND(
将时间值中的秒数以0到59之间的数字的形式返回。
TIME(hour,minute,second)
将作为数字提供的小时、分钟和秒钟转换为datetime格式的时间。
TIMEVALUE(time_text)
将文本格式的时间转换为日期时间格式的时间。
TODAY()
返回当前日期。
WEEKDAY(,)
返回指示日期属于星期几的数值,该值介于1到7之间。
默认情况下,这个星期几的范围是从1(星期日)到7(星期六)。
WEEKNUM(,)
根据return_type值返回给定日期和年份的周数。
周数指示该周在数字上属于一年中的何处。
YEAR()
以1900-9999范围的四位整数形式返回日期的年份。
YEARFRAC(,,)
计算两个日期之间的完整天数占全年天数的比例。
使用YEARFRAC工作表函数可计算要从整年的收益或负债中分配给特定期限的比例。
●时间智能函数
CLOSINGBALANCEMONTH(,[,])
计算当前上下文中该月最后一个日期的expression。
CLOSINGBALANCEQUARTER(,[,])
计算当前上下文中该季度最后日期的expression。
CLOSINGBALANCEYEAR(,[,][,])
计算当前上下文中该年度最后日期的expression。
DATEADD(,,)
返回一个表,该表包含由日期构成的一列,这些日期是在时间上从当前上下文中的日期前移或后移指定间隔数目的日期。
DATESBETWEEN(,,)
返回一个表,该表包含由日期构成的一列,这些日期从start_date开始,并且继续到end_date。
DATESINPERIOD(,,,)
返回一个表,该表包含由日期构成的一列,这些日期从start_date开始,并且继续到指定的number_of_intervals。
DATESMTD()
返回一个表,该表包含当前上下文中本月截止到现在的日期列。
DATESQTD()
返回一个表,该表包含当前上下文中本季度截止到现在的日期列。
DATESYTD(,])
返回一个表,该表包含当前上下文中本年度截止到现在的日期列。
ENDOFMONTH()
返回当前上下文中指定日期列的相对应月份的最后日期。
ENDOFQUARTER()
返回当前上下文中指定日期列的相对应季度的最后日期。
ENDOFYEAR([,])
返回当前上下文中指定日期列的相对应年份的最后日期。
FIRSTDATE()
返回当前上下文中指定日期列的第一个日期。
FIRSTNONBLANK(,)
返回按当前上下文筛选的列column(其中表达式不为空白)中的第一个值。
LASTDATE()
返回当前上下文中指定日期列的最后日期。
LASTNONBLANK(,)
返回按当前上下文筛选的列column(其中表达式不为空白)中的最后一个值。
NEXTDAY()
返回一个表,该表包含的一列具有当前上下文中基于dates列中指定的第一个日期的下一天中的所有日期。
NEXTMONTH()
返回一个表,该表包含的一列具有当前上下文中基于dates列中第一个日期的下一月中的所有日期。
NEXTQUARTER()
返回一个表,该表包含的一列具有当前上下文中基于dates列中指定的第一个日期的下一季度中的所有日期。
NEXTYEAR([,])
返回一个表,该表包含的一列具有当前上下文中基于dates列中第一个日期的下一年中的所有日期。
OPENINGBALANCEMONTH(,[,])
计算当前上下文中该月第一个日期的expression。
OPENINGBALANCEQUARTER(,[,])
计算当前上下文中该季度第一个日期的expression。
OPENINGBALANCEYEAR(,[,][,])
计算当前上下文中该年度第一个日期的expression。
PARALLELPERIOD(,,)
返回一个表,该表包含由日期构成的一列,这些日期表示与当前上下文中指定的dates列中的日期并行的期间,该列中具有在时间中前移或后移某个数目的间隔的日期。
PREVIOUSDAY()
返回一个表,该表包含的一列具有表示当前上下文的dates列中第一个日期之前那一天的所有日期。
PREVIOUSMONTH()
返回一个表,该表包含的一列具有当前上下文中基于dates列中第一个日期的上个月中的所有日期。
PREVIOUSQUARTER()
返回一个表,该表包含的一列具有当前上下文中基于dates列中第一个日期的上一季度中的所有日期。
PREVIOUSYEAR([,])
返回一个表,该表包含的一列具有当前上下文中来自上一年的所有日期,在dates列中给出最后日期。
SAMEPERIODLASTYEAR()
返回一个表,该表包含由日期构成的一列,这些日期是在时间上从当前上下文中指定的dates列中的日期移回一年的日期。
STARTOFMONTH()
返回当前上下文中指定日期列的相对应月份的第一个日期。
STARTOFQUARTER()
返回当前上下文中指定日期列的相对应季度的第一个日期。
STARTOFYEAR()
针对指定的日期列,返回当前上下文中的相对应年度的第一个日期。
TOTALMTD(,[,])
计算当前上下文中当月至今的expression的值。
TOTALQTD(,[,])
计算当前上下文中当季度至今中日期的expression的值。
TOTALYTD(,[,][,])
计算当前上下文中expression的年初至今值。
●信息函数
CONTAINS(
,,[,,]…)如果所有引用列的结果都存在或包含在这些列中,则返回true;否则,此函数返回false。
ISBLANK()
检查某个值是否为空白,并且返回TRUE或FALSE。
ISERROR()
检查某个值是否为错误,并且返回TRUE或FALSE。
ISLOGICAL()
检查某个值是否是逻辑值(TRUE或FALSE),并且返回TRUE或FALSE。
ISNONTEXT()
检查某个值是否不是文本(空白单元不是文本),返回TRUE或FALSE。
ISNUMBER()
检查某个值是否为数字,并且返回TRUE或FALSE。
ISTEXT()
检查某个值是否为文本,并且返回TRUE或FALSE。
LOOKUPVALUE(,,[,,]…)
为满足由search_columnName和search_value指定的所有标准的行返回result_columnName中的值。
PATH(,)
返回分隔的文本字符串以及当前标识符的所有父项的标识符,按最早到最新的顺序排列。
PATHCONTAINS(,- )
如果指定的path中存在指定的item,则返回TRUE。
PATHITEM(,[,])
返回位于对PATH函数进行计算所得到的字符串中指定position处的项。
位置按从左到右的顺序计数。
PATHITEMREVERSE(,[,])
返回位于对PATH函数进行计算所得到的字符串中指定position处的项。
位置按从右到左倒序计数。
PATHLENGTH()
返回给定PATH结果中指定项的父项数目(包括自身)。
●筛选器函数
ALL({
|[,[,[,…]]]})返回表中的所有行或者返回列中的所有值,同时忽略可能已应用的任何筛选器。
此函数可用于清除筛选器并对表中的所有行创建计算。
ALLEXCEPT(
,[,[,…]])删除表中除已应用于指定列的筛选器之外的所有上下文筛选器。
ALLNOBLANKROW(
|)从关系的父表中,返回除空白行之外的所有行,或某一列中除空白行之外的所有非重复值,并且忽略可能存在的所有上下文筛选器。
ALLSELECTED([|])
从当前查询的列和行中删除上下文筛选器,同时保留所有其他上下文筛选器或显式筛选器。
ALLSELECTED函数获取表示查询中所有行和列的上下文,同时保留显式筛选器以及行和列筛选器之外的上下文。
此函数可用于获取查询中的直观合计。
CALCULATE(,,…)
计算由指定筛选器修改的上下文中的表达式。
CALCULATETABLE(,,,…)
在由给定筛选器修改的上下文中计算表表达式。
DISTINCT()
返回由一列构成的一个表,该表包含来自指定列的非重复值。
换言之,重复值将被删除,仅返回唯一值。
EARLIER(,)
返回提及的列的外部计算传递中指定列的当前值。
在想要使用某个值作为输入并且基于该输入进行计算的嵌套计算中,EARLIER会很有用。
在MicrosoftExcel中,只能在当前行的上下文内执行此类计算;但在DAX中,您可以存储输入的值,然后使用来自整个表的数据进行计算。
EARLIER主要用于计算列的上下文中。
EARLIEST()
返回指定列的外部计算传递中指定列的当前值。
FILTER(
,)返回表示另一个表或表达式的子集的表。
FILTERS()
返回直接作为筛选器应用于columnName的值。
HASONEFILTER()
当columnName上的直接筛选值的数目为一时,返回TRUE;否则返回FALSE。
HASONEVALUE()
当已将columnName的上下文筛选为只剩下一个非重复值时,将返回TRUE。
否则为FALSE。
ISCROSSFILTERED()
当正在筛选columnName或相同表或相关表中的其他列时,返回TRUE。
ISFILTERED()
当直接筛选columnName时,返回TRUE。
如果列没有筛选器,或由于正在筛选同一个表或相关表中的不同列而发生筛选,则函数返回FALSE。
RELATED()
从另一个表返回相关值。
RELATEDTABLE()
在由给定筛选器修改的上下文中计算表表达式。
VALUES()
返回由一列构成的一个表,该表包含来自指定列的非重复值。
换言之,重复值将被删除,仅返回唯一值。
●逻辑函数(DAX)
AND(,)
检查是否两个参数均为TRUE,并且在两个参数均为TRUE时返回TRUE。
否则返回False。
FALSE()
返回逻辑值FALSE。
IF(logical_test>,,value_if_false)
检查是否满足作为第一个参数提供的条件。
如果该条件为TRUE,则返回一个值;如果该条件为FALSE,则返回另一个值。
IFERROR(value,value_if_error)
对某一表达式进行计算,并且如果该表达式返回错误则返回指定值,否则返回该表达式本身的值。
NOT()
将FALSE更改为TRUE,或者将TRUE更改为FALSE
OR(,)
检查参数之一是否为TRUE以返回TRUE。
如果两个参数都是FALSE,则该函数将返回FALSE。
SWITCH(,,[,,]…[,])
根据值列表计算表达式,并返回多个可能的结果表达式之一。
TRUE()
返回逻辑值TRUE。
●数学和三角函数(DAX)
ABS()
返回数字的绝对值。
CEILING(,)
将数字向上舍入到最接近的整数或基数的最接近倍数。
CURRENCY()
计算参数并以货币数据类型的形式返回结果。
EXP()
返回以e为底数、以给定数字为指数的幂。
常量e等于2.71828182845904,是自然对数的底数。
FACT()
返回一个数字的阶乘,等于序列1*2*3*...*(以给定数字结尾)。
FLOOR(,)
将数字向下舍入到基数的最接近倍数。
INT()
将数字向下舍入为最接近的整数。
ISO.CEILING([,])
将数字向上舍入到最接近的整数或基数的最接近倍数。
LN()
返回数字的自然对数。
自然对数基于常量e(2.71828182845904).
LOG(,)
返回您指定的底数的数字的对数。
LOG10()
返回数字的以10为底的对数。
INT()
将数字向下舍入为最接近的整数。
MROUND(,)
返回舍入到所需倍数的数字。
PI()
返回Pi3.14159265358979的值,精确到15位。
POWER(,)
返回进行幂运算的数字的结果。
QUOTIENT(,)
执行除法运算,并仅返回除法运算结果的整数部分。
如果要放弃除法运算结果的余数,可使用此函数。
RAND()
返回大于或等于0且小于1的平均分布的随机数字。
每次重新计算包含此函数的单元时,返回的数字都会更改。
RANDBETWEEN(,)
返回您指定的两个数字之间的范围中的随机数字。
ROUND(,)
将数字舍入到指定的位数。
ROUNDDOWN(,)
返回一个表,该表包含由日期构成的一列,这些日期是在时间上从当前上下文中指定的dates列中的日期移回一年的日期。
ROUNDUP(,)
远离0(零)向上舍入数字。
SIGN()
确定数字、计算结果或列中值的符号。
该函数在数字为正数时返回1,在数字为零时返回0(零),在数字为负数时返回-1。
SQRT()
返回数字的平方根。
SUM()
对列中的所有数字求和。
SUMX(
,)返回为表中每一行计算的表达式之和。
TRUNC(,)
通过删除数字的小数或分数部分,将数字截断为整数。
●统计函数(DAX)
ADDCOLUMNS(
,,[,,]…)将计算列添加到给定的表或表的表达式中。
AVERAGE()
返回列中所有数字的平均值(算术平均值)。
AVERAGEA()
返回列中值的平均值(算术平均值)。
处理文本和非数字值。
AVERAGEX(
,)计算对表进行求值的一组表达式的平均值(算术平均值)。
COUNTBLANK()
计算列中空白单元的数目。
COUNTROWS(
)COUNTROWS函数计算指定表中的行数,或者计算表达式定义的表中的行数。
COUNTX(
,)在对表计算表达式的结果时,计算包含数字或者计算结果为数字的表达式的行的数目。
COUNTAX(
,)COUNTAX函数用于在对表计算表达式的结果时统计非空结果数。
即,它的作用与COUNTA函数类似,但它用于对表中所有行进行循环访问,并统计指定表达式计算为非空结果的行数。
COUNTA()
COUNTA函数计算列中不为空的单元格的数目。
它不仅对包含数值的行进行计数,还对包含非空白值(包括文本、日期和逻辑值)的行进行计数。
COUNT()
COUNT函数计算列中包含数字的单元的数目。
CROSSJOIN(
,[,]…)返回一个包含这些参数的所有表中所有行的笛卡尔积的表。
新表中的各列是所有参数表中的所有列。
DISTINCTCOUNT()
DISTINCTCOUNT函数计算一个数字列中不同单元的数目。
GENERATE(,).
返回一个表以及一个笛卡尔积,后者是在table1中的每行与通过在table1中的当前行的上下文中计算table2所得到的表之间计算获得的。
GENERATEALL(,)
返回一个表以及一个笛卡尔积,后者是在table1中的每行与通过在table1中的当前行的上下文中计算table2所得到的表之间计算获得的。
MAX()
返回列中的最大数值。
MAXA()
返回列中的最大值。
逻辑值和空白被计算在内。
MAXX(
,)为表的每一行计算表达式,并且返回最大的数值。
MINA()
返回列中的最小值,包括任何逻辑值和以文本形式表示的数字。
MIN()
返回列中的最小数值。
忽略逻辑值和文本。
MINX(
,)返回通过为表的每一行计算表达式而得出的最小数值。
RANK.EQ(,[,])
返回某个数字在数字列表中的排名。
RANKX(
,[,[,[,]]][,[,[,[,]]]]…)对于table参数中的每一行,返回某个数字在数字列表中的排名。
ROW(,][,,]…])
返回一个包含单一行的表,该行包括从给予每列的表达式得到的值。
STDEV.P()
返回整个总体的标准偏差。
STDEV.S()
返回样本总体的标准偏差。
STDEVX.P(