信息。视图。列

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

返回一个表,其中包含有关语义模型中每个列的信息,例如名称、说明和格式字符串。 此信息可帮助你了解模型,并在计算表中使用时自行记录模型。

语法

INFO.VIEW.COLUMNS()

返回值

具有以下列的表:

描述
[ID] 此语义模型中每个列的唯一 ID 作为整数。
[名称] 此语义模型中每个列的名称作为字符串。
[表] 此语义模型中每个列的表作为字符串。
[DataType] 此语义模型中每个列的数据类型作为字符串。
[DataCategory] 此语义模型中每个列的数据类别作为字符串。
[说明] 此语义模型中每个列的说明为字符串。
[IsHidden] 此语义模型中每个列的隐藏状态为 True 或 False。
[IsUnique] 此语义模型中每个列的唯一性为 True of False。
[IsKey] 此语义模型中每个列的键为 True 或 False。
[IsNullable] 此语义模型中每个列的 null 值为 True 或 False。
[对齐方式] 此语义模型中每个列的对齐方式为字符串。
[SummarizeBy] 此语义模型中每个列作为字符串的汇总。
[ColumnStorage] 此语义模型中每个列的列存储作为名称和 ID 的字符串组合。
[类型] 此语义模型中每个列的类型作为字符串。
[SourceColumn] 此语义模型中每个列的源列作为字符串。
[表达式] 计算列的 DAX 公式。
[FormatString] 此语义模型中每个列的格式字符串作为字符串。
[IsAvailableInMDX] 此语义模型中每列的 MDX 中提供 True 或 False。 在 Excel 数据透视表中进行分析将仅显示设置为 True 的列。
[SortByColumn] 此语义模型中每列的排序依据列作为字符串。 按自身排序时显示为空白。
[GroupingBehavior] 此语义模型中每个列的分组行为作为字符串。
[SourceProviderType] 此语义模型中每个列的源提供程序类型作为字符串。
[DisplayFolder] 此语义模型中每个列的显示文件夹作为字符串。 用 /和多个文件夹分隔的嵌套文件夹。
[AlternateOf] 此语义模型中每个列的属性替代形式为字符串。
[LineageTag] 此语义模型中每个列的世系标记作为字符串。

言论

INFO 不同。COLUMNS,此函数可用于语义模型的计算表、列和度量值,包括作为模型刷新的一部分。

示例 1 - DAX 查询

可以在 DAX中运行以下 DAX 查询:

EVALUATE
	INFO.VIEW.COLUMNS()

此 DAX 查询返回包含此 DAX 函数的所有列的表。

示例 2 - 使用 DAX 和 SELECTCOLUMNSFILTER 查询

可以在 DAX中运行以下 DAX 查询:

EVALUATE
  // Select specific columns from the filtered result
  SELECTCOLUMNS(
    // Filter columns from the INFO.VIEW.COLUMNS() table
    FILTER(
      INFO.VIEW.COLUMNS(),
      // Exclude rows where DataCategory is "RowNumber" and Table is "xTables"
      [DataCategory] <> "RowNumber" && [Table] <> "xTables"
    ),
    // Show only these selected columns with new names where specified
    [Table],
    "Column", [Name],
    [Description],
    "DAX formula", [Expression],
    [DataCategory],
    [DataType],
    [IsHidden]
  )
  // Order the result by Table and then by Column
  ORDER BY
    [Table], [Column]

此 DAX 查询仅返回一个表,该表仅包含具有 DAX 公式的筛选条件的指定列和行。

显示 INFO 输出的屏幕截图。视图。列() 在 DAX 查询视图中具有所选列。

示例 3 - 具有 SELECTCOLUMNS 和 FILTER 的计算表

删除 EVALUATE 和 ORDER BY 关键字并添加表名称时,上述任一示例在计算表中工作。 下面是计算表中的示例 2:

Columns in this semantic model = 
// Select specific columns from the filtered result
  SELECTCOLUMNS(
    // Filter columns from the INFO.VIEW.COLUMNS() table
    FILTER(
      INFO.VIEW.COLUMNS(),
      // Exclude rows where DataCategory is "RowNumber" and Table is "xTables"
      [DataCategory] <> "RowNumber" && [Table] <> "xTables"
    ),
    // Show only these selected columns with new names where specified
    [Table],
    "Column", [Name],
    [Description],
    "DAX formula", [Expression],
    [DataCategory],
    [DataType],
    [IsHidden]
  )

此计算表在模型本身的表中显示与示例 2 中的 DAX 查询相同的信息。

示例 4 - 度量值

可以添加以下度量值来计算语义模型中的文本列数:

Number of text columns = 
COUNTROWS(
    FILTER(
        INFO.VIEW.COLUMNS(),
            [DataType] = "Text"
    )
)

这将显示一个标量值,其中包含模型中的文本列数。

这可以在视觉对象中显示:

显示 INFO 输出的屏幕截图。视图。COLUMNS() 带有一个度量值,然后在报表视觉对象中使用。

或者 DAX 查询视图中的 DAX 查询

DEFINE
	MEASURE 'Columns in this semantic model'[Number of text columns] = 
	COUNTROWS(
		FILTER(
			INFO.VIEW.COLUMNS(),
				[DataType] = "Text"
		)
	)

EVALUATE
	SUMMARIZECOLUMNS(
		"Number of text columns", [Number of text columns]
	)

另请参阅