你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

as 运算符

适用于:✅✅Azure 数据资源管理器Azure Monitor✅ Sentinel

将名称绑定到运算符的输入表格表达式。 此运算符允许查询多次引用表格表达式的值,而无需中断查询并通过 let 语句绑定名称

若要在单个查询中优化 as 运算符的多次使用,请参阅命名表达式

语法

T|as [hint.materialized=Materialized] Name

详细了解语法约定

参数

客户 类型​​ 必需 说明
T string ✔️ 要重命名的表格表达式。
Name string ✔️ 表格表达式的临时名称。
hint.materialized bool 如果 具体化 设置为 true,则表格表达式输出的值由 具体化() 函数调用包装。 否则,将在每个引用上重新计算该值。

注意

  • as 提供的名称用于 联合withsource= 列中,source_ 列查找,以及 搜索$table 列。
  • join 的外部表格输入 ($left) 中使用运算符命名的表格表达式也可用于 join 的表格内部输入 ($right)。

示例

在以下两个示例中,生成的 TableName 列由“T1”和“T2”组成。

range x from 1 to 5 step 1 
| as T1 
| union withsource=TableName (range x from 1 to 5 step 1 | as T2)

另外,你也可以如下所示编写相同的示例:

union withsource=TableName (range x from 1 to 5 step 1 | as T1), (range x from 1 to 5 step 1 | as T2)

输出

TableName x
T1 1
T1 2
T1 3
T1 4
T1 5
T2 1
T2 2
T2 3
T2 4
T2 5

在以下示例中,联接的“左侧”是:按 type == "Event"Name == "Start" 筛选 MyLogTable 联接的“右侧”为:按 type == "Event"Name == "Stop" 筛选 MyLogTable

MyLogTable  
| where type == "Event"
| as T
| where Name == "Start"
| join (
    T
    | where Name == "Stop"
) on ActivityId