1、聚合函数——由表达式定义的列或表中所有行的(标量)值,例如计数、求和、平均值、最小值或最大值。
函数 | 说明 |
---|---|
APPROXIMATEDISTINCTCOUNT | 在列中返回唯一值的估计计数 |
AVERAGE | 返回列中所有数字的平均值(算术平均值) |
AVERAGEA | 返回列中值的平均值(算术平均值) |
AVERAGEX | 计算针对表进行计算的一组表达式的平均值(算术平均值) |
COUNT | 计算指定列中包含非空值的行数 |
COUNTA | 计算指定列中包含非空值的行数 |
COUNTAX | 在对表计算表达式的结果时统计非空白结果数 |
COUNTBLANK | 对列中的空白单元格数目进行计数 |
COUNTROWS | 统计指定表中或由表达式定义的表中的行数 |
COUNTX | 在针对表计算表达式的结果时,对包含数字或计算结果为数字的表达式的行数目进行计数 |
DISTINCTCOUNT | 对列中的非重复值数目进行计数 |
DISTINCTCOUNTNOBLANK | 对列中的非重复值数目进行计数 |
MAX | 返回列中或两个标量表达式之间的最大数字值 |
MAXA | 返回列中的最大值 |
MAXX | 针对表的每一行计算表达式,并返回最大数字值 |
MIN | 返回列中或两个标量表达式之间的最小数字值 |
MINA | 返回列中的最小值,包括任何逻辑值和以文本表示的数字 |
MINX | 返回针对表中的每一行计算表达式而得出的最小数值 |
PRODUCT | 返回列中的数的乘积 |
PRODUCTX | 返回为表中的每一行计算的表达式的积 |
SUM | 对某个列中的所有数值求和 |
SUMX | 返回为表中的每一行计算的表达式的和 |
2、日期和时间函数——帮助创建基于日期和时间的计算,使用日期/时间数据类型,可以将列中的值用作参数 。
函数 | 说明 |
---|---|
CALENDAR | 返回一个表,其中有一个包含一组连续日期的名为“Date”的列 |
CALENDARAUTO | 返回一个表,其中有一个包含一组连续日期的名为“Date”的列 |
DATE | 以日期/时间格式返回指定的日期 |
DATEDIFF | 返回两个日期之间的间隔边界的计数 |
DATEVALUE | 将文本格式的日期转换为日期/时间格式的日期 |
DAY | 返回一月中的日期,1 到 31 之间的数字 |
EDATE | 返回在开始日期之前或之后指定月份数的日期 |
EOMONTH | 以日期/时间格式返回指定月份数之前或之后的月份的最后一天的日期 |
HOUR | 以数字形式返回小时值,0 (12:00 A.M.) 到 23 (11:00 P.M.) 之间的数字 |
MINUTE | 给定日期和时间值,以数字形式返回分钟值,0 到 59 之间的数字 |
MONTH | 以数字形式返回月份值,1(一月)到 12(十二月)之间的数字 |
NETWORKDAYS | 返回两个日期之间的整个工作日数 |
NOW | 以日期/时间格式返回当前日期和时间 |
QUARTER | 将季度返回为从 1 到 4 的数值 |
SECOND | 以数字形式返回时间值的秒数,0 到 59 之间的数字 |
TIME | 将以数值形式给定的小时、分钟和秒值转换为日期/时间格式的时间 |
TIMEVALUE | 将文本格式的时间转换为日期/时间格式的时间 |
TODAY | 返回当前日期 |
UTCNOW | 返回当前的 UTC 日期和时间 |
UTCTODAY | 返回当前的 UTC 日期 |
WEEKDAY | 返回指示日期属于星期几的数字,1 到 7 之间的数字 |
WEEKNUM | 根据 return_type 值返回给定日期和年份的周数 |
YEAR | 返回日期的年份,1900 到 9999 之间的四位整数 |
YEARFRAC | 计算由两个日期之间的整日数表示的年份分数 |
3、筛选器函数——最复杂且功能强大的函数, 查找函数通过使用表和关系进行工作,与数据库类似, 筛选函数可用于操作数据上下文来创建动态计算 。
函数 | 说明 |
---|---|
ALL | 返回表中的所有行或列中的所有值,同时忽略可能已应用的任何筛选器 |
ALLCROSSFILTERED | 清除应用于表的所有筛选器 |
ALLEXCEPT | 删除表中所有上下文筛选器,已应用于指定列的筛选器除外 |
ALLNOBLANKROW | 从关系的父表中,返回除空白行之外的所有行或列的所有非重复值,并且忽略可能存在的所有上下文筛选器 |
ALLSELECTED | 删除当前查询的列和行中的上下文筛选器,同时保留所有其他上下文筛选器或显式筛选器 |
CALCULATE | 在已修改的筛选器上下文中计算表达式 |
CALCULATETABLE | 在已修改的筛选器上下文中计算表表达式 |
EARLIER | 返回所述列的外部计算传递中指定列的当前值 |
EARLIEST | 返回指定列的外部计算传递中指定列的当前值 |
FILTER | 返回一个表,用于表示另一个表或表达式的子集 |
INDEX | 在指定分区(按指定顺序排序)或指定轴上的绝对位置(由位置参数指定)处返回一行 |
KEEPFILTERS | 计算 CALCULATE 或 CALCULATETABLE 函数时,修改应用筛选器的方式 |
LOOKUPVALUE | 返回满足搜索条件所指定的所有条件的行的值。 函数可以应用一个或多个搜索条件 |
MATCHBY | 在窗口函数中,定义用于确定如何匹配数据和标识当前行的列 |
OFFSET | 返回一个行,该行位于同一表中的当前行之前或之后(按给定的偏移量) |
ORDERBY | 定义用于确定每个 WINDOW 函数分区内排序顺序的列 |
PARTITIONBY | 定义用于对 WINDOW 函数的 参数进行分区的列 |
RANK | 返回给定间隔内行的级别 |
REMOVEFILTERS | 清除指定表或列中的筛选器 |
ROWNUMBER | 返回给定间隔内行的唯一级别 |
SELECTEDVALUE | 如果筛选 columnName 的上下文后仅剩下一个非重复值,则返回该值。 否则,返回 alternateResult |
WINDOW | 返回位于给定间隔内的多个行 |