返回一个表,其中包含有关语义模型中每个列的信息,例如名称、说明和格式字符串。 此信息可帮助你了解模型,并在计算表中使用时自行记录模型。
语法
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 公式的筛选条件的指定列和行。
示例 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"
)
)
这将显示一个标量值,其中包含模型中的文本列数。
这可以在视觉对象中显示:
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]
)