search işleci
Şunlar için geçerlidir: ✅Microsoft Fabric✅Azure Veri Gezgini✅ Azure İzleyici✅Microsoft Sentinel
Birden çok tablo ve sütunda metin deseninde arama yapma.
Not
Aramak istediğiniz belirli tablo ve sütunları biliyorsanız birleşim ve where işleçlerini kullanmak daha yüksek performans sağlar. Çok search
sayıda tablo ve sütunda arama yaparken işleç yavaş olabilir.
Sözdizimi
[T |
] search
[kind=
CaseSensitivity ] [in
(
TableSources)
] SearchPredicate
Söz dizimi kuralları hakkında daha fazla bilgi edinin.
Parametreler
Ad | Tür | Zorunlu | Açıklama |
---|---|---|---|
T | string |
Tablo adı , birleşim işleci veya tablo sorgusunun sonuçları gibi aranacak tablosal veri kaynağı. TableSources ile birlikte görüntülenemez. | |
CaseSensitivity | string |
Büyük/küçük harf duyarlılığı açısından gibi has tüm string skaler işleçlerin davranışını denetleen bir bayrak. Geçerli değerler , default , case_insensitive case_sensitive . varsayılan davranış büyük/küçük harfe duyarsız olduğundan ve case_insensitive seçenekleri default eş anlamlıdır. |
|
TableSources | string |
Aramaya katılmak için virgülle ayrılmış "joker karakterli" tablo adlarının listesi. Liste, birleşim işlecinin listesiyle aynı söz dizimine sahiptir. TabularSource ile birlikte görüntülenemez. | |
SearchPredicate | string |
✔️ | Girişteki her kayıt için değerlendirilecek boole ifadesi. döndürürse true , kayıt çıkarılır. Bkz . Arama koşulu söz dizimi. |
Arama koşulu söz dizimi
SearchPredicate, tablonun tüm sütunlarında belirli terimleri aramanızı sağlar. Bir arama terimine uygulanacak işleç, aşağıdaki tabloda gösterildiği gibi, terimdeki joker karakterin (*
) varlığına ve yerleşimine bağlıdır.
Literal | Operatör |
---|---|
billg |
has |
*billg |
hassuffix |
billg* |
hasprefix |
*billg* |
contains |
bi*lg |
matches regex |
Ayrıca aramayı belirli bir sütunla kısıtlayabilir, terim eşleşmesi yerine tam eşleşme arayabilir veya normal ifadeye göre arama yapabilirsiniz. Bu durumların her biri için söz dizimi aşağıdaki tabloda gösterilmiştir.
Sözdizimi | Açıklama |
---|---|
ColumnName: StringLiteral |
Bu söz dizimi, aramayı belirli bir sütunla kısıtlamak için kullanılabilir. Varsayılan davranış, tüm sütunlarda arama yapmaktır. |
ColumnName== StringLiteral |
Bu söz dizimi, bir sütunun dize değeriyle tam eşleşmelerini aramak için kullanılabilir. Varsayılan davranış, terim eşleşmesi aramaktır. |
StringLiteral Sütunu matches regex |
Bu söz dizimi, StringLiteral'ın regex deseni olduğu normal ifade eşleştirmesini gösterir. |
Koşulları birleştirmek ve daha karmaşık aramalar oluşturmak için boole ifadelerini kullanın. Örneğin, "error" and x==123
herhangi bir sütunda terimi error
ve sütundaki değeri 123
içeren kayıtların aranmasıyla x
sonuçlanır.
Not
Hem TabularSource hem de TableSource'lar atlanırsa, arama kapsamı içindeki veritabanının tüm kısıtlanmamış tabloları ve görünümleri üzerinde taşınır.
Arama koşulu söz dizimi örnekleri
# | Sözdizimi | Anlam (eşdeğer where ) |
Açıklamalar |
---|---|---|---|
1 | search "err" |
where * has "err" |
|
2 | search in (T1,T2,A*) "err" |
union T1,T2,A* | where * has "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 |
Tüm dize karşılaştırmaları büyük/küçük harfe duyarlıdır | |
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) |
Açıklamalar
Bul işlecinden farklı olarak search
işleç aşağıdakileri desteklemez:
withsource=
: Çıkışta her zaman değeri her kaydın alındığı tablo adı olan türstring
adlı$table
bir sütun (veya kaynak bir tablo değil bileşik ifadeyse sistem tarafından oluşturulan bir ad) bulunur.project=
,project-smart
: Çıkış şeması, çıkış şemasınaproject-smart
eşdeğerdir.
Örnekler
Genel terim araması
Kapsam içindeki veritabanının tüm kısıtlanmamış tabloları ve görünümlerini içeren bir terim arayın.
search "Green"
Çıkış, , Products
ve SalesTable
tablolarındaki Customers
kayıtları içerir. Kayıtlarda Customers
soyadı "Yeşil" olan tüm müşteriler, Products
ve SalesTable
kayıtları ise "Yeşil" adından bahseden ürünleri gösterir.
Koşullu genel terim araması
Kapsam içindeki veritabanının tüm kısıtlanmamış tablolarında ve görünümlerinde her iki terimle de eşleşen kayıtları arayın.
search "Green" and ("Deluxe" or "Proseware")
Belirli bir tabloda arama
Yalnızca tabloda arama.Customers
search in (Products) "Green"
Büyük/küçük harfe duyarlı arama
Kapsam içindeki veritabanının tüm kısıtlanmamış tablolarında ve görünümlerinde büyük/küçük harfe duyarlı terimlere uyan kayıtları arayın.
search kind=case_sensitive "blue"
Belirli sütunlarda arama yapma
Kapsam içindeki veritabanının tüm kısıtlanmamış tablo ve görünümlerinde "FirstName" ve "LastName" sütunlarında bir terim arayın.
search FirstName:"Aaron" or LastName:"Hughes"
Aramayı zaman damgasına göre sınırlama
Terim, belirtilen tarihten daha büyük bir tarihe sahip bir kayıtta görünüyorsa, kapsam dahilindeki tüm kısıtlanmamış tablolarda ve görünümlerde bir terim arayın.
search "Hughes" and DateKey > datetime('2009-01-01')
Performans İpuçları
# | İpucu | Tercih etmek | Üstünde |
---|---|---|---|
1 | Ardışık search birkaç işleç yerine tek search bir işleç kullanmayı tercih edin |
search "billg" and ("steveb" or "satyan") |
search "billg" | arama "steveb" veya "satyan" |
2 | İşlecin içinde filtrelemeyi search tercih edin |
search "billg" and "steveb" |
arama * | burada * "billg" ve * ise "steveb" |