Sdílet prostřednictvím


Operátor as

Platí pro: ✅Microsoft FabricAzure Data Explorer✅Azure MonitorMicrosoft Sentinel

Vytvoří vazbu názvu na vstupní tabulkový výraz operátora. Tento operátor umožňuje dotazu odkazovat na hodnotu tabulkového výrazu několikrát, aniž by přerušil dotaz a prováže název prostřednictvím příkazu let.

Pokud chcete optimalizovat více použití operátoru as v rámci jednoho dotazu, podívejte se na pojmenované výrazy.

Syntaxe

T|as [hint.materialized=Materialized] Name

Přečtěte si další informace o konvencích syntaxe.

Parametry

Název Type Požadováno Popis
T string ✔️ Tabulkový výraz, který chcete přejmenovat.
Název string ✔️ Dočasný název tabulkového výrazu.
hint.materialized bool Pokud je materializovaná nastavena na true, hodnota výstupu tabulkového výrazu je zabalena voláním materialize() funkce. V opačném případě se hodnota přepočítá na každý odkaz.

Poznámka:

  • Název zadaný as se používá ve sloupci withsource=sjednocení, source_ sloupci najíta sloupec $table vyhledávací ho.
  • Tabulkový výraz pojmenovaný pomocí operátoru ve vnějším tabulkovém vstupu spojení ($left) lze použít také v tabulkovém vnitřním vstupu spojení ($right).

Příklady

V následujících dvou příkladech se vygenerovaný sloupec TableName skládá z T1 a T2.

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

Případně můžete napsat stejný příklad takto:

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

výstupní

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

V následujícím příkladu je levá strana spojení: MyLogTable filtrované podle type == "Event" a Name == "Start" a pravé strany spojení je: MyLogTable filtrované podle type == "Event" a Name == "Stop"

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