Topik ini menjelaskan cara menggunakan instruksi perhitungan SQL untuk data terstruktur dalam Bahasa Proses Terstruktur (SPL) dan menyertakan contoh penggunaannya.
extend
Membuat bidang baru berdasarkan hasil ekspresi SQL. Untuk daftar fungsi SQL yang didukung, lihat Daftar Fungsi SQL yang Didukung oleh SPL.
Sintaksis
| extend <output>=<sql-expr>, ...Deskripsi parameter
Parameter | Tipe | Diperlukan | Deskripsi |
output | Bidang | Ya | Nama bidang tujuan yang akan ditambahkan. Anda tidak dapat mengeluarkan hasil dari beberapa ekspresi ke bidang tujuan yang sama. Penting Jika bidang tujuan memiliki nama yang sama dengan bidang dalam data masukan, bidang asli akan ditimpa dengan tipe dan nilai baru. |
sql-expr | SQLExpr | Ya | Ekspresi pemrosesan data. Penting Untuk informasi tentang cara menangani nilai null, lihat Menangani nilai null dalam ekspresi SPL. |
Contoh
Contoh 1: Menggunakan ekspresi perhitungan.
* | extend Duration = EndTime - StartTimeContoh 2: Menggunakan ekspresi reguler.
* | extend server_protocol_version=regexp_extract(server_protocol, '\d+')Contoh 3: Mengekstrak konten dari jalur JSON dan mengubah tipe data suatu bidang.
Pernyataan SPL
* | extend a=json_extract(content, '$.body.a'), b=json_extract(content, '$.body.b') | extend b=cast(b as BIGINT)Data Masukan
content: '{"body": {"a": 1, "b": 2}}'Hasil Keluaran
content: '{"body": {"a": 1, "b": 2}}' a: '1' b: 2
where
Menyaring data berdasarkan ekspresi SQL dan menyimpan entri data yang memenuhi kondisi tersebut. Untuk daftar fungsi SQL yang didukung, lihat Daftar Fungsi SQL yang Didukung oleh SPL.
Sintaksis
| where <sql-expr>Deskripsi parameter
Parameter | Tipe | Diperlukan | Deskripsi |
sql-expr | SQLExp | Ya | Ekspresi SQL. Entri data yang memenuhi ekspresi ini disimpan. Penting Untuk informasi tentang cara menangani nilai null dalam ekspresi SQL, lihat Menangani nilai null dalam ekspresi SPL. |
Contoh
Contoh 1: Menyaring entri data berdasarkan isi bidang.
* | where userId='123'Contoh 2: Menggunakan ekspresi reguler untuk menyaring entri data.
* | where regexp_like(server_protocol, '\d+')Contoh 3: Mengubah tipe data lalu menyaring semua kesalahan di sisi server.
* | where cast(status as BIGINT) >= 500