operator search
Mencari pola teks dalam beberapa tabel dan kolom.
Catatan
Jika Anda mengetahui tabel dan kolom tertentu yang ingin Anda cari, lebih berkinerja untuk menggunakan gabungan dan operatordi mana . Operator search
bisa lambat saat mencari di sejumlah besar tabel dan kolom.
Sintaks
[T|
] search
[kind=
CaseSensitivity ] [in
(
TableSources)
] SearchPredicate
Pelajari selengkapnya tentang konvensi sintaksis.
Parameter
Nama | Jenis | Diperlukan | Deskripsi |
---|---|---|---|
T | string |
Sumber data tabular yang akan dicari, seperti nama tabel, operator gabungan, atau hasil kueri tabular. Tidak dapat muncul bersama dengan TableSources. | |
CaseSensitivity | string |
Bendera yang mengontrol perilaku semua string operator skalar, seperti has , sehubungan dengan sensitivitas huruf besar/kecil. Nilai yang valid adalah default , case_insensitive , case_sensitive . Opsi default dan case_insensitive identik, karena perilaku default tidak peka huruf besar/kecil. |
|
TableSources | string |
Daftar nama tabel "kartubebas" yang dipisahkan koma untuk mengambil bagian dalam pencarian. Daftar ini memiliki sintaksis yang sama dengan daftar operator union. Tidak dapat muncul bersama dengan TabularSource. | |
SearchPredicate | string |
✔️ | Ekspresi boolean yang akan dievaluasi untuk setiap rekaman dalam input. Jika mengembalikan true , rekaman akan dihasilkan. Lihat Sintaksis predikat pencarian. |
Sintaksis predikat pencarian
SearchPredicate memungkinkan Anda mencari istilah tertentu di semua kolom tabel. Operator yang akan diterapkan ke istilah pencarian tergantung pada keberadaan dan penempatan tanda bintang kartubebas (*
) dalam istilah , seperti yang ditunjukkan dalam tabel berikut.
Harfiah | Operator |
---|---|
billg |
has |
*billg |
hassuffix |
billg* |
hasprefix |
*billg* |
contains |
bi*lg |
matches regex |
Anda juga dapat membatasi pencarian ke kolom tertentu, mencari kecocokan yang tepat alih-alih kecocokan istilah, atau mencari berdasarkan ekspresi reguler. Sintaks untuk setiap kasus ini diperlihatkan dalam tabel berikut.
Sintaks | Penjelasan |
---|---|
ColumnName: StringLiteral |
Sintaks ini dapat digunakan untuk membatasi pencarian ke kolom tertentu. Perilaku defaultnya adalah mencari semua kolom. |
ColumnName== StringLiteral |
Sintaks ini dapat digunakan untuk mencari kecocokan yang tepat dari kolom terhadap nilai string. Perilaku defaultnya adalah mencari kecocokan istilah. |
Kolommatches regex StringLiteral |
Sintaks ini menunjukkan pencocokan ekspresi reguler, di mana StringLiteral adalah pola regex. |
Gunakan ekspresi boolean untuk menggabungkan kondisi dan membuat pencarian yang lebih kompleks. Misalnya, "error" and x==123
akan menghasilkan pencarian rekaman yang memiliki istilah error
di kolom apa pun dan nilai 123
dalam x
kolom.
Catatan
Jika TabularSource dan TableSources dihilangkan, pencarian dilakukan di semua tabel dan tampilan database yang tidak dibatasi dalam cakupan.
Contoh sintaks predikat pencarian
# | Sintaks | Artinya (setara where ) |
Komentar |
---|---|---|---|
1 | search "err" |
where * has "err" |
|
2 | search in (T1,T2,A*) "err" |
union T1,T2,A* | yang mana * memiliki "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 |
Perbandingan string tidak peka huruf besar/kecil | |
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) |
Keterangan
Tidak sepertioperator temukan, operator search
tidak mendukung hal berikut:
withsource=
: Output akan selalu menyertakan kolom yang disebut$table
jenisstring
yang nilainya adalah nama tabel tempat setiap rekaman diambil (atau beberapa nama yang dihasilkan sistem jika sumbernya bukan tabel tetapi ekspresi komposit).project=
,project-smart
: Skema output setara dengan skema outputproject-smart
.
Contoh
Pencarian istilah global
Cari istilah di semua tabel dan tampilan database yang tidak dibatasi dalam cakupan.
search "Green"
Output berisi rekaman dari Customers
tabel , Products
, dan SalesTable
. Catatan menunjukkan Customers
semua pelanggan dengan nama belakang "Hijau", dan Products
rekaman dan SalesTable
menunjukkan produk dengan beberapa penyebutan "Hijau".
Pencarian istilah global bersyar
Cari rekaman yang cocok dengan kedua istilah di semua tabel dan tampilan database yang tidak dibatasi dalam cakupan.
search "Green" and ("Deluxe" or "Proseware")
Mencari tabel tertentu
Cari hanya dalam Customers
tabel.
search in (Products) "Green"
Pencarian peka huruf besar/kecil
Cari rekaman yang cocok dengan istilah peka huruf besar/kecil di semua tabel dan tampilan database yang tidak dibatasi dalam cakupan.
search kind=case_sensitive "blue"
Mencari kolom tertentu
Cari istilah di kolom "FirstName" dan "LastName" di semua tabel dan tampilan database yang tidak dibatasi dalam cakupan.
search FirstName:"Aaron" or LastName:"Hughes"
Batasi pencarian menurut tanda waktu
Cari istilah di semua tabel dan tampilan database yang tidak dibatasi dalam cakupan jika istilah muncul dalam rekaman dengan tanggal yang lebih besar dari tanggal tertentu.
search "Hughes" and DateKey > datetime('2009-01-01')
Tips Performa
# | Tip | Memilih | Over |
---|---|---|---|
1 | Lebih suka menggunakan satu operator search daripada beberapa operator search berturut-turut |
search "billg" and ("steveb" or "satyan") |
cari "billg" | cari "steveb" atau "satyan" |
2 | Lebih suka memfilter di dalam operator search |
search "billg" and "steveb" |
cari * | yang mana * memiliki "billg" dan * memiliki "steveb" |
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk