Ana içeriğe geç

Load

LOAD deyimi, alanları bir dosyadan, kod içinde tanımlanmış verilerden, daha önceden yüklenmiş tablodan, web sayfasından, ardından gelen SELECT deyiminin sonucundan veya verileri otomatik olarak oluşturarak yükler. Analiz bağlantılarından da veri yüklenebilir.

Söz Dizimi:  

LOAD [ distinct ] fieldlist

[( from file [ format-spec ] |

from_field fieldassource [format-spec]|

inline data [ format-spec ] |

resident table-label |

autogenerate size ) |extension pluginname.functionname([script] tabledescription)]

[ where criterion | while criterion ]

[ group by groupbyfieldlist ]

[order by orderbyfieldlist ]

Bağımsız Değişkenler:  

Bağımsız Değişkenler
Bağımsız DeğişkenAçıklama
distinct

Yalnızca benzersiz kayıtları yüklemek istiyorsanız koşul olarak distinct öğesini kullanabilirsiniz. Çoğaltılmış kayıtlar varsa birinci örnek yüklenir.

Önceki yüklemeleri kullanıyorsanız distinct yalnızca hedef tabloyu etkilediğinden birinci load deyimine distinct öğesini yerleştirmeniz gerekir.

Öncelikli yükleme

fieldlistfieldlist ::= ( * | field{, * | field } )

Yüklenecek alanların listesi. Alan listesi olarak * kullanılması tablodaki tüm alanları işaret eder.

field ::= ( fieldref | expression ) [as aliasname ]

Alan tanımı, her zaman için bir değişmez değeri, mevcut alana bir referansı veya bir ifadeyi içermelidir.

fieldref ::= ( fieldname |@fieldnumber |@startpos:endpos [ I | U | R | B | T] )

fieldname, tablodaki bir alan adıyla aynı olan metindir. Alan adının, örneğin boşluklar içeriyorsa düz çift tırnak işaretleri veya köşeli ayraçlar içine alınması gerektiğini unutmayın. Alan adları kimi zaman açık şekilde kullanılabilir durumda olmayabilir. Bu durumda farklı gösterim kullanılır.

@fieldnumber, sınırlanmış bir tablo dosyasındaki alan numarasını temsil eder. Önünde "@" yer alan pozitif bir tamsayı olmalıdır. Numaralandırma her zaman 1'den başlar ve alan sayısına kadar gider.

@startpos:endpos, sabit uzunluklu kayıtların bulunduğu bir dosyada alanın başlangıç ve bitiş konumlarını temsil eder. Konumların her ikisi de pozitif tamsayı olmalıdır. Bu iki sayının öncesinde "@" gelmeli ve iki sayı iki nokta üst üste ile ayrılmalıdır. Numaralandırma her zaman 1'den başlar ve konumların sayısına kadar gider. Son alanda, bitiş konumu olarak n kullanılır.

  • @startpos:endpos öğesinin hemen ardından I veya U karakterleri gelirse okunan baytlar imzalanmış ikili (I) veya imzalanmamış (U) tamsayı (Intel bayt sırası) olarak yorumlanır. Okunan konumların sayısı 1, 2 veya 4 olmalıdır.
  • @startpos:endpos öğesinin hemen ardından R karakteri gelirse okunan baytlar ikili gerçek sayı (IEEE 32 bit ya da 64 bit kayan nokta) olarak yorumlanır. Okunan konumların sayısı 4 veya 8 olmalıdır.
  • @startpos:endpos öğesinin hemen ardından B karakteri gelirse okunan baytlar COMP-3 standardına göre BCD (Binary Coded Decimal) sayıları olarak yorumlanır. İstenen sayıda bayt belirtilebilir.

expression, aynı tablodaki bir veya birkaç alanı temel alan bir sayısal fonksiyon veya bir dize fonksiyonu olabilir. Daha fazla bilgi için ifadelerin söz dizimine bakın.

Alana yeni bir ad atamak için as ifadesi kullanılır.

from

Verilerin klasör kullanılarak bir dosyadan yüklenmesi gerekiyorsa from kullanılır.

file ::= [ path ] filename

  • Kişisel alan: [lib://DataFiles/xyz.qvd]

    DataFiles bağlantısı kullanırken bir klasör hiyerarşisi oluşturamaz veya referans veremezsiniz. Örneğin, aşağıdaki desteklenmez: [lib://DataFiles/subfolder1/xyz.qvd]

  • Paylaşılan alan: [lib://TeamSharedSpace:DataFiles/xyz.qvd]
from_fieldDaha önceden yüklenmiş bir alandan veri yüklenmesi gerekirse from_field kullanılır.

fieldassource::=(tablename, fieldname)

Alan, daha önceden yüklenen tablename ve fieldname adıdır.

format-spec ::= ( fspec-item {, fspec-item } )

Biçim belirtimi, ayraçlar içinde, birden fazla biçim belirtimi öğesinin listesinden oluşur. Daha fazla bilgi için bk. Biçimlendirme belirtim öğeleri.

Bilgi notufrom_field, tablolardaki alanları ayırırken liste sınırlayıcısı olarak yalnızca virgülleri destekler.
inlineVerilerin kod içerisine yazılması ve dosyadan yüklenmemesi gerekirse inline kullanılır.

data ::= [ text ]

inline cümlesiyle girilen veriler çift tırnak işareti veya köşeli ayraçlar içine alınmalıdır. Bunlar arasındaki metinler bir dosyanın içeriğiyle aynı şekilde yorumlanır. Bu nedenle, bir metin dosyasında yeni satır eklerken, bunu aynı zamanda inline cümlesinin metninde de yapmalı, yani kodu yazarken Enter tuşuna basmalısınız. Sütun sayısı, ilk satıra bağlı olarak tanımlanır.

format-spec ::= ( fspec-item {, fspec-item } )

Biçim belirtimi, ayraçlar içinde, birden fazla biçim belirtimi öğesinin listesinden oluşur. Daha fazla bilgi için bk. Biçimlendirme belirtim öğeleri.

resident Daha önceden yüklenmiş bir tablodan veri yüklenmesi gerekirse resident kullanılır.

table label, asıl tabloyu oluşturan LOAD veya SELECT deyimlerinin önünde bulunan bir etikettir. Bu etiketin sonuna iki nokta üst üste eklenmelidir.

Daha önce yüklenmiş bir tablodan verileri yükleme

Tablo etiketleri

autogenerateautogenerate, verilerin otomatik olarak Qlik Sense tarafından oluşturulması gerekiyorsa kullanılır.

size ::= number

Number, oluşturulacak kayıt sayını belirten bir tamsayıdır.

Alan listesi, Peek fonksiyonuyla daha önce yüklenen bir tabloda tek bir alan değerine referansta bulunmadığınız sürece, harici veri kaynağından veya daha önce yüklenen tablodan veri gerektiren ifadeler içermemelidir.

wherewhere, bir kaydın seçime dahil edilmesi gerekip gerekmediğini belirtmek için kullanılan bir cümledir. criterion değeri True ise seçim dahil edilir.

criterion, mantıksal bir ifadedir.

while

while, bir kaydın tekrar tekrar okunması gerekip gerekmediğini belirtmek için kullanılan bir cümledir. criterion değeri True olduğu sürece aynı kayıt okunur. Kullanışlı olması için while cümlesi genellikle IterNo( ) fonksiyonunu içermelidir.

criterion, mantıksal bir ifadedir.

group by

group by, verilerin hangi alan üzerinde toplanması (gruplanması) gerektiğini tanımlamak için kullanılan bir cümledir. Toplama alanları yüklenen ifadelere bir şekilde dahil edilmelidir. Yüklenen ifadelerde toplama işlevleri dışında toplama alanlarından başka herhangi bir alan kullanılamaz.

groupbyfieldlist ::= (fieldname { ,fieldname } )

order byorder by, yerleşik tablonun kayıtlarını, load deyimi tarafından işlenmeden önce sıralamak için kullanılan bir cümledir. Yerleşik tablo bir veya daha fazla alana göre artan veya azalan olarak sıralanabilir. Sıralama, birincil olarak sayısal değere ve ikincil olarak da ulusal harmanlama düzenine göre yapılır. Bu cümle yalnızca veri kaynağı yerleşik bir tablo olduğunda kullanılabilir.

Düzenleme alanları, yerleşik tablonun hangi alana göre sıralanacağını belirler. Bu alan, adıyla veya yerleşik tablodaki sayısıyla belirlenebilir (birinci alan 1 numaradır).

orderbyfieldlist ::= fieldname [ sortorder ] { , fieldname [ sortorder ] }

sortorder, artan için asc veya azalan için desc şeklindedir. Herhangi bir sortorder belirtilmezse asc olduğu varsayılır.

fieldname, path, filename ve aliasname sırasıyla kendi adlarının ifade ettiklerini temsil eden metin dizeleridir. Kaynak tablodaki herhangi bir alan fieldname olarak kullanılabilir. Ancak, as cümlesiyle oluşturulan alanlar (aliasname) kapsam dışıdır ve aynı load deyiminin içerisinde kullanılamaz.

from, inline, resident, from_fielduzantı veya autogenerate cümlesi aracılığıyla bir veri kaynağı verilmezse, veriler hemen ardından gelen SELECT ya da LOAD deyiminin sonucundan yüklenir. Bunun ardından gelen deyimin bir öneki bulunmamalıdır.

Daha önce yüklenmiş bir tablodan verileri yükleme

Bilgi notuDataFiles bağlantılarının dosya uzantısı büyük-küçük harfe duyarlıdır. Örneğin: .qvd.

Örnekler:  

Bu sayfa size yardımcı oldu mu?

Bu sayfa veya içeriği ile ilgili bir sorun; bir yazım hatası, eksik bir adım veya teknik bir hata bulursanız, bize bildirin, düzeltelim!