Bagikan melalui


Perintah fungsi .create

Berlaku untuk: ✅Microsoft Fabric✅Azure Data Explorer

Membuat fungsi tersimpan, yang merupakan kueri KQL yang dapat digunakan kembali dengan nama yang diberikan. Definisi fungsi dipertahankan dengan metadata database.

Fungsi dapat memanggil fungsi lain (rekursifitas tidak didukung). Selain itu, let pernyataan diizinkan sebagai bagian dari Isi Fungsi. Lihat let pernyataan.

Aturan untuk jenis parameter dan pernyataan CSL sama dengan let pernyataan.

Izin

Anda harus memiliki setidaknya izin Pengguna Database untuk menjalankan perintah ini.

Sintaks

.create function [ ifnotexists ] [ with(propertyName=propertyValue [, ...]) ] {

Pelajari selengkapnya tentang konvensi sintaksis.

Parameter

Nama Tipe Wajib Deskripsi
ifnotexists string Jika ditentukan, fungsi hanya akan dibuat jika fungsi belum ada.
functionName string ✔️ Nama fungsi yang akan dibuat atau diubah.
propertyName, propertyValue string Daftar pasangan properti kunci-nilai yang dipisahkan koma. Lihat properti yang didukung.
parameter string Daftar parameter yang dipisahkan koma yang diperlukan oleh fungsi . Format untuk setiap parameter harus ParameterName:ParameterDataType.
body string ✔️ Ekspresi fungsi yang ditentukan pengguna.

Properti yang didukung

Nama Tipe Deskripsi
docstring string Deskripsi fungsi untuk tujuan antarmuka pengguna.
folder string Nama folder yang digunakan untuk kategorisasi fungsi UI.
view bool Menunjuk fungsi ini sebagai tampilan tersimpan. Tampilan tersimpan dapat berpartisipasi dalam skenario pencarian dan union * . Untuk informasi selengkapnya, lihat Tampilan.
skipvalidation bool Menentukan apakah akan menjalankan logika validasi pada fungsi atau tidak dan gagal dalam proses jika fungsi tidak valid. Default adalah false.

Tip

Jika fungsi melibatkan kueri lintas kluster dan Anda berencana untuk membuat ulang fungsi menggunakan skrip Bahasa Kueri Kusto, atur skipvalidation ke true.

Mengembalikan

Parameter output Tipe Deskripsi
Nama string Nama fungsi.
Parameter string Parameter yang diperlukan oleh fungsi.
Isi string Pernyataan let (nol atau lebih) diikuti oleh ekspresi CSL yang valid dan dievaluasi pada pemanggilan fungsi.
Folder string Folder yang digunakan untuk kategorisasi fungsi antarmuka pengguna. Parameter ini tidak mengubah cara fungsi dipanggil.
DocString string Deskripsi fungsi untuk tujuan antarmuka pengguna.

Catatan

  • Jika fungsi sudah ada:
    • Jika bendera ifnotexists ditentukan, perintah diabaikan (tidak ada perubahan yang diterapkan).
    • Jika bendera ifnotexists TIDAK ditentukan, kesalahan akan ditampilkan.
    • Untuk mengubah fungsi yang ada, lihat .alter function
  • Tidak semua jenis data didukung dalam pernyataan let. Jenis yang didukung adalah: boolean, string, long, tanggalwaktu, timespan, double, dan dynamic.
  • Gunakan skipvalidation untuk melewati validasi semantik fungsi. Tindakan ini berguna jika fungsi dibuat dalam urutan yang salah dan F1 yang menggunakan F2 dibuat lebih awal.

Contoh

Fungsi sederhana

Contoh berikut membuat MyFunction1 fungsi dengan deskripsi (docstring), folder bernama Demo, dan menentukan fungsi .

.create function 
with (docstring = 'Simple demo function', folder='Demo')
MyFunction1()
{StormEvents | take 100}
Nama Parameter Isi Folder DocString
MyFunction1 () {StormEvents | take 100} Demo Fungsi demo simpel

Fungsi dengan parameter

Contoh berikut membuat fungsi MyFunction2 dengan deskripsi (docstring), folder bernama Demo, dan menentukan parameter Mytimestamp.

.create function with (docstring = "Demo function with date parameter",folder = "Demo") 
 MyFunction2(Mytimestamp:datetime) {
    StormEvents
    | where EndTime <= Mytimestamp
 }
Nama Parameter Isi Folder DocString
MyFunction2 (Mytimestamp:datetime) {StormEvents | where EndTime <= Mytimestamp} Demo Fungsi demo dengan parameter tanggal