Оператор as
Область применения: ✅Microsoft Fabric✅✅
Привязывает имя к входному табличному выражению оператора. Этот оператор позволяет запросу ссылаться на значение табличного выражения несколько раз, не нарушая запрос и привязывая имя с помощью инструкции let .
Чтобы оптимизировать использование as
оператора в одном запросе, см. раздел Именованные выражения.
Синтаксис
T|
as
[hint.materialized
=
Материализовано] Имя
Дополнительные сведения о соглашениях синтаксиса.
Параметры
Имя (название) | Type | Обязательно | Описание |
---|---|---|---|
T | string |
✔️ | Табличное выражение для переименования. |
Имя | string |
✔️ | Временное имя табличного выражения. |
hint.materialized |
bool |
Если Материализованная имеет значение true , значение выходных данных табличного выражения упаковывается вызовом функции materialize(). В противном случае значение пересчитывается для каждой ссылки. |
Примечание.
- Имя, заданное
as
, используется в столбцеwithsource=
объединения, столбцеsource_
поискаи столбце$table
поиска. - Табличное выражение с именем, использующее оператор в внешних табличных входных данных объединения (
$left
), может также использоваться в табличных внутренних входных данных объединения ($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)
выходных
Имя таблицы | x |
---|---|
T1 | 1 |
T1 | 2 |
T1 | 3 |
T1 | 4 |
T1 | 5 |
T2 | 1 |
T2 | 2 |
T2 | 3 |
T2 | 4 |
T2 | 5 |
В следующем примере "левая сторона" соединения: MyLogTable
отфильтрованы по type == "Event"
и Name == "Start"
и "справа" соединения: MyLogTable
отфильтрованы по type == "Event"
и Name == "Stop"
MyLogTable
| where type == "Event"
| as T
| where Name == "Start"
| join (
T
| where Name == "Stop"
) on ActivityId