[函数大全] FIRSTNONBLANKVALUE

  [复制链接]
查看184193 | 回复155 | 2021-2-21 21:35:12 | 显示全部楼层 |阅读模式
本帖最后由 XF 于 2021-2-22 13:17 编辑

为表的每行计值表达式,返回结果不为空的第一个列值所对应的表达式的值。

语法
  1. FIRSTNONBLANKVALUE ( <列名>, <表达式> )
复制代码

参数属性描述
列名列表达式
表达式沿着列逐行计算的表达式

返回值

标量 一个任何类型的值

备注

虽然被归为迭代函数,但与 FIRSTNONBLANK 不同的是,FIRSTNONBLANKVALUE 的<表达式>参数在筛选上下文中计值,这是由于存在一个隐式的 CALCULATE行上下文进行了转换。


<列名>参数可以是以下任一项 :

  • 对列的引用。只有在这种情况下才应用上下文转换,因为列引用被替换为CALCULATETABLE ( DISTINCT ( <列名> ) )
  • 返回单列的表表达式
  • 定义单列的布尔表达式


尽管 FIRSTNONBLANKVALUE 通常用于日期,但它也可以应用于任何数据类型的列。


FIRSTNONBLANKVALUE 等价于下面的表达式:

  1. CALCULATE (
  2.     <Expression>,
  3.     FIRSTNONBLANK (
  4.         <ColumnName>,
  5.         CALCULATE( <Expression> )
  6.     )
  7. )
复制代码

FIRSTNONBLANKVALUE 未针对 DirectQuery 进行优化,在计算列和行级别安全性公式中完全不受支持。 但可以在度量值和查询公式中使用,只不过无法保证性能。
此函数的内在行为类似 SUMMARIZECOLUMNS,在某些嵌套使用的情景下(比如作为迭代函数的第二参数)可能会得到异常结果,未来的这种值行为可能会发生变化,建议你尽量避免嵌套使用。

示例

以下公式返回销售额不为空的第一个地区经理的销售额:

  1. = FIRSTNONBLANKVALUE('Table'[地区经理],CALCULATE(SUM('Table'[销售额])))
复制代码


详细了解 FIRSTNONBLANKVALUE 的行为,请参考扩展阅读:

理解 FIRSTNONBLANKVALUE 和 LASTNONBLANKVALUE

FIRSTNONBLANKVALUE 和 LASTNONBLANKVALUE的计算行为与FIRSTNONBLANK 和 LASTNONBLANK相同,唯一的区别在于返回结果的不同,前者返回的是的值,后者返回的是的值




回复

使用道具 举报

redwine0422 | 2021-4-24 22:43:28 | 显示全部楼层
为了三千积分!
回复

使用道具 举报

醉鞭名马 | 2021-5-1 10:39:05 来自手机 | 显示全部楼层
不错 支持下
回复

使用道具 举报

软心人 | 2021-9-25 19:19:47 | 显示全部楼层
这个视频很不错,推荐一下
回复

使用道具 举报

canape | 2021-10-10 20:21:33 来自手机 | 显示全部楼层
谢谢网站确实不错,超值
回复

使用道具 举报

zl8850038 | 2021-10-26 18:26:08 来自手机 | 显示全部楼层
LZ是天才,坚定完毕
回复

使用道具 举报

红胡子 | 2021-11-10 11:14:41 | 显示全部楼层
确实不错,顶先
回复

使用道具 举报

fan | 2021-11-30 12:41:36 | 显示全部楼层
前排,哇咔咔
回复

使用道具 举报

jason_dion | 2022-1-3 21:10:56 来自手机 | 显示全部楼层
好,很好,非常好!
回复

使用道具 举报

zhouqh | 2022-1-29 23:15:04 来自手机 | 显示全部楼层
LZ敢整点更有创意的不?兄弟们等着围观捏~
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则