operator wyszukiwania
Dotyczy: ✅Microsoft Fabric✅✅
Wyszukuje wzorzec tekstu w wielu tabelach i kolumnach.
Uwaga
Jeśli znasz konkretne tabele i kolumny, które chcesz przeszukiwać, bardziej wydajne jest użycie unii i lokalizacji operatorów. Operator search
może być powolny podczas wyszukiwania dużej liczby tabel i kolumn.
Składnia
[T] |
[search
kind=
CaseSensitivity ] [in
(
TableSources)
] SearchPredicate
Dowiedz się więcej na temat konwencji składni.
Parametry
Nazwisko | Type | Wymagania | opis |
---|---|---|---|
T | string |
Tabelaryczne źródło danych, które ma być przeszukiwane, takie jak nazwa tabeli, operator unii lub wyniki zapytania tabelarycznego. Nie można określić razem z TableSources. | |
Wielkość liter | string |
Flaga, która kontroluje zachowanie wszystkich string operatorów skalarnych, takich jak has , w odniesieniu do poufności wielkości liter. Prawidłowe wartości to default , , case_insensitive case_sensitive . Opcje default i case_insensitive są synonimami, ponieważ zachowanie domyślne jest bez uwzględniania wielkości liter. |
|
TableSources | string |
Rozdzielona przecinkami lista "wieloznacznych" nazw tabel do udziału w wyszukiwaniu. Lista ma taką samą składnię jak lista operatora unii. Nie można określić razem ze źródłem danych tabelarycznych (T). | |
SearchPredicate | string |
✔️ | Wyrażenie logiczne, które ma być oceniane dla każdego rekordu w danych wejściowych. Jeśli zwraca true wartość , rekord jest zwracany. Zobacz Składnia predykatu wyszukiwania. |
Uwaga
Jeśli oba tabelaryczne źródło danych (T) i TableSources zostaną pominięte, wyszukiwanie jest przenoszone na wszystkie nieograniczone tabele i widoki bazy danych w zakresie.
Składnia predykatu wyszukiwania
Funkcja SearchPredicate umożliwia wyszukiwanie określonych terminów we wszystkich kolumnach tabeli. Operator zastosowany do terminu wyszukiwania zależy od obecności i umieszczania gwiazdki wieloznacznych (*
) w okresie, jak pokazano w poniższej tabeli.
Literal | Operator |
---|---|
billg |
has |
*billg |
hassuffix |
billg* |
hasprefix |
*billg* |
contains |
bi*lg |
matches regex |
Możesz również ograniczyć wyszukiwanie do określonej kolumny, wyszukać dokładne dopasowanie zamiast dopasowania terminu lub wyszukać według wyrażenia regularnego. Składnia dla każdego z tych przypadków jest wyświetlana w poniższej tabeli.
Składnia | Wyjaśnienie |
---|---|
Nazwakolumny: StringLiteral |
Ta składnia może służyć do ograniczenia wyszukiwania do określonej kolumny. Domyślne zachowanie polega na wyszukiwaniu wszystkich kolumn. |
Nazwakolumny== StringLiteral |
Ta składnia może służyć do wyszukiwania dokładnych dopasowań kolumny względem wartości ciągu. Domyślne zachowanie polega na wyszukaniu dopasowania terminu. |
Ciąg kolumnowyLiteralmatches regex |
Ta składnia wskazuje dopasowanie wyrażenia regularnego, w którym StringLiteral jest wzorcem wyrażeń regularnych. |
Użyj wyrażeń logicznych, aby połączyć warunki i tworzyć bardziej złożone wyszukiwania. Na przykład "error" and x==123
spowoduje to wyszukanie rekordów, które mają termin error
w dowolnych kolumnach i wartość 123
w kolumnie x
.
Przykłady składni predykatu wyszukiwania
# | Składnia | Znaczenie (równoważne where ) |
Komentarze |
---|---|---|---|
1 | search "err" |
where * has "err" |
|
2 | search in (T1,T2,A*) "err" |
union T1,T2,A* | gdzie * ma wartość "err" |
|
3 | search col:"err" |
where col has "err" |
|
4 | search col=="err" |
where col=="err" |
|
5 | search "err*" |
where * hasprefix "err" |
|
6 | search "*err" |
where * hassuffix "err" |
|
7 | search "*err*" |
where * contains "err" |
|
8 | search "Lab*PC" |
where * matches regex @"\bLab.*PC\b" |
|
9 | search * |
where 0==0 |
|
10 | search col matches regex "..." |
where col matches regex "..." |
|
11 | search kind=case_sensitive |
W przypadku wszystkich porównań ciągów uwzględniana jest wielkość liter | |
12 | search "abc" and ("def" or "hij") |
where * has "abc" and (* has "def" or * has hij") |
|
13 | search "err" or (A>a and A<b) |
where * has "err" or (A>a and A<b) |
Uwagi
W przeciwieństwie do operatora findoperator search
nie obsługuje następującej składni:
-
withsource=
: Dane wyjściowe zawsze zawierają kolumnę o nazwie$table
typustring
, której wartością jest nazwa tabeli, z której pobrano każdy rekord (lub nazwa wygenerowana przez system, jeśli źródło nie jest tabelą, ale wyrażeniem złożonym). -
project=
,project-smart
: schemat wyjściowy jest odpowiednikiemproject-smart
schematu wyjściowego.
Przykłady
W przykładzie w tej sekcji pokazano, jak używać składni, aby ułatwić rozpoczęcie pracy.
Przykłady w tym artykule używają publicznie dostępnych tabel w pomocy klastra, takich jak tabela
StormEvents
w bazie danych przykładów.
Przykłady w tym artykule używają publicznie dostępnych tabel, takich jak tabela
StormEvents
w przykładowej analizie pogody przykładowych danych.
Wyszukiwanie terminów globalnych
Wyszukaj termin Zielony we wszystkich tabelach bazy danych ContosoSales.
Dane wyjściowe znajdują rekordy z terminem Green jako nazwisko lub kolor w tabelach Customers
, Products
i SalesTable
.
search "Green"
wyjściowe
$table | Nazwa miasta | Nazwa kontynentu | Klucz klienta | Edukacja | Imię | Płeć | Nazwisko |
---|---|---|---|---|---|---|---|
Klientela | Ballard | Ameryka Północna | 16549 | Kolegium częściowe | Murarz | M | Zielony |
Klientela | Bellingham | Ameryka Północna | 2070 | Szkoła średnia | Adam | M | Zielony |
Klientela | Bellingham | Ameryka Północna | 10658 | Kawalerów | Sara | F | Zielony |
Klientela | Beverly Hills | Ameryka Północna | 806 | Stopień ukończenia | Richard | M | Zielony |
Klientela | Beverly Hills | Ameryka Północna | 7674 | Stopień ukończenia | James | M | Zielony |
Klientela | Burbank | Ameryka Północna | 5241 | Stopień ukończenia | Madeline | F | Zielony |
Warunkowe wyszukiwanie terminów globalnych
Wyszukaj rekordy zawierające termin Green i jeden z terminów Deluxe lub Proseware w bazie danych ContosoSales.
search "Green" and ("Deluxe" or "Proseware")
wyjściowe
$table | ProductName | Producent | ColorName | Nazwa klasy | ProductCategoryName |
---|---|---|---|---|---|
Produktów | Zegar Contoso 8GB & Radio MP3 Odtwarzacz X850 Zielony | Contoso, Ltd | Zielony | Deluxe | Dźwięk |
Produktów | Proseware Scan Jet Digital Flat Bed Skaner M300 Zielony | Proseware, Inc. | Zielony | Regularny | Komputery |
Produktów | Proseware All-In-One Photo Printer M200 Green | Proseware, Inc. | Zielony | Regularny | Komputery |
Produktów | Proseware Ink Jet Wireless All-In-One Drukarka M400 Zielony | Proseware, Inc. | Zielony | Regularny | Komputery |
Produktów | Proseware Ink Jet Instant PDF Sheet-Fed Skaner M300 Zielony | Proseware, Inc. | Zielony | Regularny | Komputery |
Produktów | Proseware Desk Jet All-in-One Printer, Skaner, Kopiarka M350 Zielony | Proseware, Inc. | Zielony | Regularny | Komputery |
Produktów | Proseware Duplex Skaner M200 Zielony | Proseware, Inc. | Zielony | Regularny | Komputery |
Wyszukiwanie określonej tabeli
Wyszukaj termin Green tylko w tabeli Customers
.
search in (Products) "Green"
wyjściowe
$table | ProductName | Producent | ColorName |
---|---|---|---|
Produktów | Contoso 4G MP3 Player E400 Green | Contoso, Ltd | Zielony |
Produktów | Contoso 8GB Super-Slim MP3/Video Player M800 Green | Contoso, Ltd | Zielony |
Produktów | Contoso 16GB Mp5 Player M1600 Green | Contoso, Ltd | Zielony |
Produktów | Zegar Contoso 8GB & Radio MP3 Odtwarzacz X850 Zielony | Contoso, Ltd | Zielony |
Produktów | Słuchawki stereo Bluetooth NT NT M402 Green | Northwind Traders | Zielony |
Produktów | Nadajnik bezprzewodowy NT i słuchawki Bluetooth M150 Green | Northwind Traders | Zielony |
Wyszukiwanie uwzględniające wielkość liter
Wyszukaj rekordy zgodne z terminem uwzględniającym wielkość liter w bazie danych ContosoSales.
search kind=case_sensitive "blue"
wyjściowe
$table | ProductName | Producent | ColorName | Nazwa klasy |
---|---|---|---|---|
Produktów | Contoso 16GB New Generation MP5 Player M1650 niebieski | Contoso, Ltd | niebieski | Regularny |
Produktów | Contoso Bright Light baterii E20 niebieski | Contoso, Ltd | niebieski | Gospodarka |
Produktów | Litware 120mm Niebieski wentylator LED E901 niebieski | Litware, Inc. | niebieski | Gospodarka |
Nowa sprzedaż | Litware 120mm Niebieski wentylator LED E901 niebieski | Litware, Inc. | niebieski | Gospodarka |
Nowa sprzedaż | Litware 120mm Niebieski wentylator LED E901 niebieski | Litware, Inc. | niebieski | Gospodarka |
Nowa sprzedaż | Litware 120mm Niebieski wentylator LED E901 niebieski | Litware, Inc. | niebieski | Gospodarka |
Nowa sprzedaż | Litware 120mm Niebieski wentylator LED E901 niebieski | Litware, Inc. | niebieski | Gospodarka |
Wyszukiwanie określonych kolumn
Wyszukaj terminy Aaron i Hughesw kolumnach "FirstName" i "LastName" odpowiednio w bazie danych ContosoSales.
search FirstName:"Aaron" or LastName:"Hughes"
wyjściowe
$table | Klucz klienta | Edukacja | Imię | Płeć | Nazwisko |
---|---|---|---|---|---|
Klientela | 18285 | Szkoła średnia | Riley | F | Hughes |
Klientela | 802 | Stopień ukończenia | Aaron | M | Sharma |
Klientela | 986 | Kawalerów | Melanie | F | Hughes |
Klientela | 12669 | Szkoła średnia | Jessica | F | Hughes |
Klientela | 13436 | Stopień ukończenia | Mariah | F | Hughes |
Klientela | 10152 | Stopień ukończenia | Aaron | M | Campbell |
Ogranicz wyszukiwanie według znacznika czasu
Wyszukaj termin Hughes w bazie danych ContosoSales, jeśli termin pojawia się w rekordzie z datą większą niż dana data w ciągu "datetime".
search "Hughes" and DateKey > datetime('2009-01-01')
wyjściowe
$table | DateKey | SalesAmount_real |
---|---|---|
SalesTable | 2021-12-13T00:00:00Z | 446.4715 |
SalesTable | 2021-12-13T00:00:00Z | 120.555 |
SalesTable | 2021-12-13T00:00:00Z | 48.4405 |
SalesTable | 2021-12-13T00:00:00Z | 39.6435 |
SalesTable | 2021-12-13T00:00:00Z | 56.9905 |
Wskazówki dotyczące wydajności
# | Napiwek | Woleć | Ponad |
---|---|---|---|
1 | Preferuj używanie jednego search operatora w kilku kolejnych search operatorach |
search "billg" and ("steveb" or "satyan") |
wyszukiwanie "billg" | wyszukiwanie "steveb" lub "satyan" |
2 | Preferuj search filtrowanie wewnątrz operatora |
search "billg" and "steveb" |
wyszukiwanie * | gdzie * ma "billg" i * ma "steveb" |