оператор in
Область применения: ✅Microsoft Fabric✅✅
Фильтрует набор записей для данных с учетом регистра.
В следующей таблице приведено сравнение in
операторов:
Operator | Description | С учетом регистра | Пример (при true ) |
---|---|---|---|
in |
Соответствует одному из элементов | Да | "abc" in ("123", "345", "abc") |
!in |
Не соответствует одному из элементов | Да | "bca" !in ("123", "345", "abc") |
in~ |
Равно любому из элементов | No | "Abc" in~ ("123", "345", "abc") |
!in~ |
Не соответствует одному из элементов | No | "bCa" !in~ ("123", "345", "ABC") |
Примечание.
Вложенные массивы сведены в один список значений. Например, x in (dynamic([1,[2,3]]))
преобразуется в x in (1,2,3)
.
Дополнительные сведения о других операторах и определение наиболее подходящих операторов для запроса см. в разделе строковых операторов типа данных.
Операторы, работающие без учета регистра, сейчас поддерживают только текст ASCII. Для сравнения работы со схемами, отличными от ASCII, используйте функцию tolower().
Советы по производительности
Примечание.
Если используются более 128 терминов поиска, оптимизация поиска текстовых индексов отключена, что может привести к снижению производительности запросов.
Примечание.
Производительность зависит от типа поиска и структуры данных. Рекомендации см. в разделе "Рекомендации по запросу".
Синтаксис
T|
where
colin
(
expression ...,
)
Дополнительные сведения о соглашениях синтаксиса.
Параметры
Имя (название) | Type | Обязательно | Description |
---|---|---|---|
T | string |
✔️ | Табличные входные данные для фильтрации. |
col | string |
✔️ | Столбец, по которому необходимо отфильтровать. |
выражение | скалярный или табличный | ✔️ | Выражение, указывающее значения, для которых выполняется поиск. Каждое выражение может быть скалярным значением или табличным выражением, которое создает набор значений. Если табличное выражение содержит несколько столбцов, используется первый столбец. Поиск рассматривает до 1000 000 различных значений. |
Возвраты
Строки в T, для которых предикат имеет значение true
.
Примеры
Список скалярных
В следующем запросе показано, как использовать in
с списком скалярных значений.
StormEvents
| where State in ("FLORIDA", "GEORGIA", "NEW YORK")
| count
Выходные данные
Count |
---|
4775 |
Динамический массив
В следующем запросе показано, как использовать in
динамический массив.
let states = dynamic(['FLORIDA', 'ATLANTIC SOUTH', 'GEORGIA']);
StormEvents
| where State in (states)
| count
Выходные данные
Count |
---|
3218 |
Табличное выражение
В следующем запросе показано, как использовать in
табличное выражение.
let Top_5_States =
StormEvents
| summarize count() by State
| top 5 by count_;
StormEvents
| where State in (Top_5_States)
| count
Тот же запрос можно записать с помощью встроенной инструкции табличного выражения.
StormEvents
| where State in (
StormEvents
| summarize count() by State
| top 5 by count_
)
| count
Выходные данные
Count |
---|
14242 |
Основной с другим примером
В следующем примере определяются первые пять состояний с событиями молнии и используется функция iff()
и оператор in
для классификации событий молнии по пяти верхним пяти состояниям, помеченным именем состояния, и все остальные, помеченные как "Другие".
let Lightning_By_State = materialize(StormEvents
| summarize lightning_events = countif(EventType == 'Lightning') by State);
let Top_5_States = Lightning_By_State | top 5 by lightning_events | project State;
Lightning_By_State
| extend State = iff(State in (Top_5_States), State, "Other")
| summarize sum(lightning_events) by State
Выходные данные
Штат | sum_lightning_events |
---|---|
АЛАБАМА | 29 |
WISCONSIN | 31 |
TEXAS | 55 |
FLORIDA | 85 |
ДЖОРДЖИЯ | 106 |
Другие | 415 |
Использование статического списка, возвращенного функцией
В следующем примере выполняется подсчет событий из таблицы StormEvents
на основе предопределенного списка интересных состояний. Интересные состояния определяются функцией InterestingStates()
.
StormEvents
| where State in (InterestingStates())
| count
Выходные данные
Count |
---|
4775 |
В следующем запросе отображаются состояния, которые считаются интересными функцией InterestingStates()
.
.show function InterestingStates
Выходные данные
Имя (название) | Параметры | Текст | Папка | DocString |
---|---|---|---|---|
InterestingStates | () | { dynamic(["ВАШИНГТОН", "ФЛОРИДА", "ДЖОРДЖИЯ", "НЬЮ-ЙОРК"]) } |
Связанное содержимое
- оператор in~
- оператор !in~
- !in оператор
- оператор contains_cs
- оператор has_cs