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.

Sözdizim:  

LOAD [ distinct ] fieldlist

[( from file [ format-spec ] |

from_field fieldassource [format-spec]

inline data [ format-spec ] |

resident table-label |

autogenerate size )]

[ where criterion | while criterion ]

[ group_by groupbyfieldlist ]

[order_by orderbyfieldlist ]

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

Bağımsız Değişken Açıklama
distinct distinct, çoğaltılmış kayıtların yalnızca ilkinin yüklenmesi gerekiyorsa kullanılan bir koşuldur.
fieldlist fieldlist ::= ( * | 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 başvuruyu 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, ayrılmış 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 karakteri geliyorsa, okunan baytlar ikili imzalı (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 kullanılır.

from

Bir dosyadan veri yüklenmesi gerekirse from kullanılır.

file ::= [ path ] filename

  • mutlak

    Örnek: c:\data\

  • QlikView belge yoluna göreceli.

    Örnek: data\

  • İnternet veya intranet üzerinde bulunan bir konuma işaret eden URL adresi (HTTP veya FTP). URL, URL olarak kodlanmış olmalıdır (örn. boşluk karakterleri içeriyorsa).

    Örnek: http://www.qlik.com

    Örnek: http://www.enterprise.com/project%20files (http://www.enterprise.com/project files)

Yol atlanırsa, QlikView bu dosyayı Directory deyiminde belirtilen dizinde arar. Herhangi bir Directory deyimi yoksa, QlikView dosyayı çalışma dizininde arar; bu çalışma dizini genellikle QlikView dosyasının bulunduğu dizindir.

Note: QlikView sunucusu kurulumunda varsayılan çalışma dizini C:\ProgramData\QlikTech\Documents olur. Varsayılan çalışma dizini QlikView Management Console içinden değiştirilebilir.

filename standart DOS joker karakterlerini ( * ve ? ) içerebilir. Bu durum, belirtilen dizindeki tüm eşleşen dosyaların yüklenmesine neden olur.

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

Biçim belirtimi, ayraçlar içinde, birden fazla biçim belirtimi öğesinin listesinden oluşur.

Bkz. Directory

Bkz. From

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

fieldassource::=(tablename, fieldname)

Alan, daha önce 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.

inline Verilerin 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.

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

Biçim belirtimi, ayraçlar içinde, birden fazla biçim belirtimi öğesinin listesinden oluşur.

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.

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

Bkz. Tablo etiketleri

autogenerate autogenerate, verilerin otomatik olarak QlikView tarafından oluşturulması gerekiyorsa kullanılır.

size ::= number

Number, oluşturulacak kayıt sayını belirten bir tamsayıdır. Alan listesi, bir veritabanından veri gerektiren ifadeler içermemelidir. İfadelerde sadece sabitlere ve parametre içermeyen fonksiyonlara (rand() veya recno() gibi) izin verilir.

where where, 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_by order 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.

Alanların sıralaması, 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. Hiçbir sortorder belirtilmemişse asc öğesi 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.

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

Bkz. Öncelikli LOAD

Örnekler: