Aracılığıyla paylaş


toscalar()

Şunlar için geçerlidir: ✅Microsoft Fabric

Değerlendirilen ifadenin skaler sabit değerini döndürür.

Bu işlev, aşamalı hesaplamalar gerektiren sorgular için kullanışlıdır. Örneğin, toplam olay sayısını hesaplayın ve ardından sonucu kullanarak tüm olayların belirli bir yüzdesini aşan grupları filtreleyin.

İki deyim noktalı virgülle ayrılır.

Sözdizimi

toscalar( ifade)

Söz dizimi kuralları hakkında daha fazla bilgi edinin.

Parametreler

Ad Tür Zorunlu Açıklama
ifade string ✔️ Skaler değere dönüştürülecek değer.

Döndürülenler

Değerlendirilen ifadenin skaler sabit değeri. Sonuç tablosal ise, dönüştürme için ilk sütun ve ilk satır alınır.

İpucu

kullanırken sorgunun okunabilirliği için let deyimini kullanabilirsiniz toscalar().

Sınırlamalar

toscalar() işlevi her satıra uygulayan bir senaryoya uygulanamaz. Bunun nedeni, işlevin sorgu yürütme sırasında yalnızca sabit sayıda hesaplanabilir olmasıdır. Genellikle, bu sınırlamaya uyulduğunda aşağıdaki hata döndürülür: can't use '<column name>' as it is defined outside its row-context scope.

Aşağıdaki örnekte sorgu şu hatayla başarısız olur:

'toscalar': can't use 'x' as it is defined outside its row-context scope.

let _dataset1 = datatable(x:long)[1,2,3,4,5];
let _dataset2 = datatable(x:long, y:long) [ 1, 2, 3, 4, 5, 6];
let tg = (x_: long)
{
    toscalar(_dataset2| where x == x_ | project y);
};
_dataset1
| extend y = tg(x)

Bu hata, aşağıdaki örnekte olduğu gibi işleci kullanılarak join azaltılabilir:

let _dataset1 = datatable(x: long)[1, 2, 3, 4, 5];
let _dataset2 = datatable(x: long, y: long) [1, 2, 3, 4, 5, 6];
_dataset1
| join (_dataset2) on x 
| project x, y

Çıktı

x y
1 2
3 4
5 6

Örnekler

Bu bölümdeki örneklerde, kullanmaya başlamanıza yardımcı olması için söz diziminin nasıl kullanılacağı gösterilmektedir.

Değerlendirme aralığını ayarlama

, Startve End değerlerini skaler sabitler olarak değerlendirin Stepve sonucu değerlendirme için range kullanın.

let Start = toscalar(print x=1);
let End = toscalar(range x from 1 to 9 step 1 | count);
let Step = toscalar(2);
range z from Start to End step Step | extend start=Start, end=End, step=Step

Çıktı

z start end step
1 1 9 2
3 1 9 2
5 1 9 2
7 1 9 2
9 1 9 2

Sabit ve dinamik GUID oluşturma

Aşağıdaki örnekte, sabit guidoluşturmak için toscalar() nasıl kullanılabileceğini, tam olarak bir kez hesaplanmış ve guidiçin dinamik değerlerin nasıl kullanılabileceğini gösterir.

let g1 = toscalar(new_guid());
let g2 = new_guid();
range x from 1 to 2 step 1
| extend x=g1, y=g2

Çıktı

x y
e6a15e72-756d-4c93-93d3-fe85c18d19a3 c2937642-0d30-4b98-a157-a6706e217620
e6a15e72-756d-4c93-93d3-fe85c18d19a3 c6a48cb3-9f98-4670-bf5b-589d0e0dcaf5
  • Skaler işlev türlerini bir bakışta