使用 let 语句

已完成

let 语句将名称绑定到表达式。 对于范围中出现了 let 语句的其余部分,名称可以引用其绑定值。 let 语句改善了模块化和重用,因为它们允许你将可能复杂的表达式分解为多个部分。 每个部分通过 let 语句绑定到名称,一起构成一个整体。 Let 语句允许创建用户定义函数和视图。 视图是结果类似于新表的表达式。

声明和重用变量

Let 语句允许创建变量以在后面的语句中使用。 此示例将创建 timeOffSet 和 discardEventId,并将其用作 SecurityEvent“where”子句的一部分。

let timeOffset = 7d;
let discardEventId = 4688;
SecurityEvent
| where TimeGenerated > ago(timeOffset*2) and TimeGenerated < ago(timeOffset)
| where EventID != discardEventId

提示

“ago()”是一个函数,它将采用当前的日期和时间,并减去提供的值。

声明 dynamic 表或列表

Let 语句允许创建 dynamic 表或列表。

let suspiciousAccounts = datatable(account: string) [
    @"\administrator", 
    @"NT AUTHORITY\SYSTEM"
];
SecurityEvent | where Account in (suspiciousAccounts)
let LowActivityAccounts =
    SecurityEvent 
    | summarize cnt = count() by Account 
    | where cnt < 1000;
LowActivityAccounts | where Account contains "SQL"