Membuat fungsi yang ditentukan pengguna

Selesai

Fungsi yang ditentukan pengguna (UDF) digunakan untuk memperluas tata bahasa kueri Azure Cosmos DB untuk NoSQL dan menerapkan logika bisnis kustom. UDF hanya dapat dipanggil dari kueri dalam karena mereka meningkatkan dan memperluas bahasa kueri SQL.

Catatan

UDF tidak memiliki akses ke objek konteks dan dimaksudkan untuk digunakan sebagai kode khusus komputasi

Berikut adalah contoh dokumen JSON untuk produk dengan properti name dan price.

{
  "name": "Black Bib Shorts (Small)",
  "price": 80.00
}

Kueri SQL sederhana untuk mendapatkan data dari kontainer dengan banyak item seperti ini, akan dibuat untuk menyertakan kedua bidang.

SELECT 
    p.name,
    p.price
FROM
    products p

UDF memperluas bahasa kueri SQL dengan memberi Anda area kecil tempat Anda dapat memasukkan logika bisnis sederhana ke dalam kueri. Mari kita ambil contoh ini, dan buat fungsi yang ditentukan pengguna untuk menerapkan pajak bisnis. Dalam skenario contoh kami, kami ingin menerapkan pajak 15% dan berakhir dengan kumpulan hasil ideal yang mencakup properti priceWithTax ketiga.

[
  {
    "name": "Black Bib Shorts (Small)",
    "price": 80.00,
    "priceWithTax": 92.00
  }
]

Fungsi yang ditentukan pengguna didefinisikan sebagai fungsi JavaScript yang menerima satu atau lebih input skalar dan kemudian mengembalikan nilai skalar sebagai output.

function name(input) {
    return output;
}

Dalam fungsi contoh ini, input skalar diasumsikan berupa angka yang kemudian dikalikan dengan 1,15 untuk menambah pajak 15%.

function addTax(preTax) {
    return preTax * 1.15;
}

Kueri yang diperbarui mencakup bidang proyeksi ketiga yang mereferensikan fungsi udf dengan menggunakan sintaksis udf.addTax() yang meneruskan bidang p.price sebagai parameter input dan membuat alias output bidang tersebut dengan nama priceWithTax.

SELECT 
    p.name,
    p.price,
    udf.addTax(p.price) AS priceWithTax
FROM
    products p