Share via


table()

table() işlevi, adını türünde stringbir ifade olarak sağlayarak bir tabloya başvurur.

Syntax

table(TableName [,DataScope] )

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

Parametreler

Ad Tür Gerekli Açıklama
TableName string ✔️ Başvurulmakta olan tablonun adı. Bu ifadenin değeri işlev çağrısı noktasında sabit olmalıdır; başka bir deyişle veri bağlamı tarafından farklılık gösteremez.
DataScope string Tablo başvurularını, bu verilerin tablonun etkin önbellek ilkesi kapsamındaki şekline göre kısıtlamak için kullanılır. Kullanılırsa, gerçek bağımsız değişken Geçerli veri kapsamı değerlerinden biri olmalıdır.

Geçerli veri kapsamı değerleri

Değer Açıklama
hotcache Yalnızca sık erişimli önbellek olarak kategorilere ayrılmış verilere başvurulur.
all Tablodaki tüm verilere başvurulacaktır.
default Varsayılan değer, küme yöneticisi tarafından olarak ayarlanmış hotcache olması dışında şeklindedirall.

Döndürülenler

table(T) Döndürür:

  • T adlı bir tablo varsa T tablosundan veriler.
  • T adlı bir tablo yoksa ancak T adlı bir işlev varsa, T işlevi tarafından döndürülen veriler. T işlevi bağımsız değişken almamalı ve tablo sonucu döndürmelidir.
  • T adlı bir tablo ve Tadlı bir işlev yoksa anlamsal bir hata oluşur.

Örnekler

Geçerli veritabanının tablosuna erişmek için table() kullanma

table('StormEvents') | count

Çıkış

Count
59066

let deyimlerinin içinde table() kullanma

Yukarıdaki sorgu, table() işlevine geçirilen bir parametre tableName alan sorgu tanımlı bir işlev (let deyimi) olarak yeniden yazılabilir.

let foo = (tableName:string)
{
    table(tableName) | count
};
foo('StormEvents')

Çıkış

Count
59066

İşlevler içinde table() kullanma

Yukarıdakiyle aynı sorgu, table() işlevine geçirilen bir parametre tableName alan bir işlevde kullanılmak üzere yeniden yazılabilir.

.create function foo(tableName:string)
{
    table(tableName) | count
};

Not

Bu tür işlevler yalnızca yerel olarak kullanılabilir ve kümeler arası sorguda kullanılamaz.

Table() öğesini sabit olmayan parametreyle kullanma

Skaler sabit dize olmayan bir parametre, işleve table() parametre olarak geçirılamaz.

Aşağıda, bu tür bir durum için geçici çözüm örneği verilmiştir.

let T1 = print x=1;
let T2 = print x=2;
let _choose = (_selector:string)
{
    union
    (T1 | where _selector == 'T1'),
    (T2 | where _selector == 'T2')
};
_choose('T2')

Çıkış

x
2