autonumber - kod fonksiyonu

Kod fonksiyonu, kod yürütme sırasında karşılaşılan expression öğesinin her tekil değerlendirilen değeri için benzersiz bir tamsayı değerini döndürür. Bu fonksiyon, örneğin bir karmaşık anahtarın sıkıştırılmış bellek temsilini oluşturmak için kullanılabilir.

Note: Tamsayı, tablonun okunduğu sıraya göre oluşturulduğundan, yalnızca aynı veri yüklemesinde oluşturulmuş autonumber anahtarlarını bağlayabilirsiniz. Kaynak veri sıralamasından bağımsız olarak, veri yükleri arasında kalıcı olan anahtarları kullanmanız gerekirse, hash128, hash160 veya hash256 fonksiyonlarını kullanmalısınız.

Syntax:  

autonumber(expression[ , AutoID])

Arguments:  

Bağımsız Değişken Açıklama
AutoID

autonumber fonksiyonunun kod içindeki farklı anahtarlarda kullanılması durumunda çoklu sayaç örnekleri oluşturmak için, her bir sayacı adlandırmak üzere isteğe bağlı AutoID parametresi kullanılabilir.

Example: Bileşik anahtar oluşturma

Bu örnekte, belleği muhafaza etmek için autonumber fonksiyonunu kullanarak bir bileşik anahtar oluşturuyoruz. Örnek, gösterim amacına yönelik olarak kısadır; ancak çok sayıda satır içeren bir tablo ile anlamlı olur.

Region Year Month Sales
North 2014 May 245
North 2014 May 347
North 2014 June 127
South 2014 June 645
South 2013 May 367
South 2013 May 221

Kaynak veriler, satır içi verilerin kullanımıyla yüklenir. Daha sonra Region, Year ve Month alanlarından bileşik anahtar oluşturan bir öncelikli yüklemeyi ekliyoruz.

RegionSales: LOAD *, AutoNumber(Region&Year&Month) as RYMkey; LOAD * INLINE [ Region, Year, Month, Sales North, 2014, May, 245 North, 2014, May, 347 North, 2014, June, 127 South, 2014, June, 645 South, 2013, May, 367 South, 2013, May, 221 ];

 

Elde edilen tablo şöyle görünür:

Region Year Month Sales RYMkey
North 2014 May 245 1
North 2014 May 347 1
North 2014 June 127 2
South 2014 June 645 3
South 2013 May 367 4
South 2013 May 221 4

Bu örnekte, başka bir tabloya bağlamanız gerekmesi halinde 'North2014May' dizesi yerine RYMkey öğesine (örneğin, 1) referansta bulunabilirsiniz.

Şimdi de maliyetleri içeren bir kaynak tabloyu benzer şekilde yüklüyoruz. Yapay anahtar oluşturmanın önüne geçmek için Region, Year ve Month alanları öncelikli yüklemede hariç tutulur; tabloları bağlayarak autonumber fonksiyonu ile bir bileşik anahtar zaten oluşturuyoruz.

RegionCosts: LOAD Costs, AutoNumber(Region&Year&Month) as RYMkey; LOAD * INLINE [ Region, Year, Month, Costs South, 2013, May, 167 North, 2014, May, 56 North, 2014, June, 199 South, 2014, June, 64 South, 2013, May, 172 South, 2013, May, 126 ];

 

Artık bir sayfaya bir tablo görselleştirmesi ekleyebilir ve Region, Year ve Month alanlarının yanı sıra satış ve maliyetlere ilişkin Toplam hesaplamalarını ilave edebiliriz. Tablo şöyle görünür:

Region Year Month Sum([Sales]) Sum([Costs])
Totals     1952 784
North 2014 June 127 199
North 2014 May 592 56
South 2014 June 645 64
South 2013 May 588 465