RANGE

适用于:计算列计算表度量值视觉对象计算

返回给定轴中相对于当前行的行间隔。 此间隔由当前行之前最后的<step>行或当前行之后的前几个<step>行组成。

语法

RANGE ( <step>[, <includeCurrent>][, <axis>][, <blanks>][, <reset>] )

parameters

术语 定义
step 要包含在范围中的当前行之前(负值)或之后(正值)的行数。 必须为常数值。
- 如果为负值,则窗口将包含当前行之前最后的 -step 行。
- 否则,窗口将包含当前行之后的前几个 step 行。
includeCurrent (可选)一个逻辑值,指定是否在范围中包括当前行。 默认值为 True。
(可选)轴引用,即创建间隔的方向。
空白 (可选)定义排序时如何处理空白值的枚举。
支持的值包括:
  • 采用 DEFAULT(默认值)时,数值的行为是空白值在零和负值之间排序。 字符串的行为是空白值排列在所有字符串(包括空字符串)之前。
  • 采用 FIRST 时,无论升序或降序排序,空格始终排在开头。
  • 采用 LAST 时,无论升序或降序排序,空格始终排在末尾。
reset (可选)指示计算是否重置,以及处于视觉形状的列层次结构的哪个级别。 接受的值为:NONE、LOWESTPARENT、HIGHESTPARENT 或整数。 此行为取决于整数符号:
- 如果为零或省略,则计算不会重置。 等效于 NONE。
- 如果为正值,则整数标识从最高开始的列、与粒度无关。 HIGHESTPARENT 等效于 1。
- 如果为负值,则整数标识相对于当前粒度从最低开始的列。 LOWESTPARENT 等效于 -1。

返回值

数据行的间隔。

注解

此函数只能在视觉计算中使用。

可以省略<includeCurrent>、<axis>、<blanks>和<reset>参数。

示例 1

在汇总每个产品类别每月总销售额的表中,以下 DAX 查询将添加一个列,其中包含过去 6 个月的总销售额:

TotalSalesLast6Months = CALCULATE(SUM([SalesAmount]), RANGE(-5, Rows))

下面的屏幕截图显示了视觉矩阵和视觉计算表达式:

DAX 视觉计算

示例 2

在相同的表中,以下 DAX 查询将添加一列,其中包含之后 12 个月的总销售额,不包括当前月份:

TotalSalesFollowingYear = CALCULATE(SUM([SalesAmount]), RANGE(12, FALSE, Rows, KEEP))

另请参阅

INDEX
ORDERBY
PARTITIONBY
WINDOW