指令碼前置詞
前置詞可套用於適用的一般陳述式,但絕不可套用於控制陳述式。不過,when 和 unless 前置詞可作為一些特定控制陳述式子句的後置詞。
所有的指令碼關鍵字皆可以小寫和大寫字元的任意組合輸入。但用於陳述式中的欄位和變數名稱則會區分大小寫。
使用各個函數的下拉式清單,查看各函數的簡短描述及語法。按一下語法描述中的函數名稱以取得更多詳細資料。
add 前置詞可新增到指令碼中任何的 LOAD、SELECT 或 map...using 陳述式。僅在部分重新載入期間才會相關。
Add [only] (loadstatement | selectstatement | mapstatement)
透過 buffer 前置詞可以自動建立和維護 QVD 檔案。這個前置詞可以用於指令碼的大多數 LOAD 和 SELECT 陳述式。其表示 QVD 檔案會用於快取/緩衝陳述式的結果。
Buffer[(option [ , option])] ( loadstatement | selectstatement )
option::= incremental | stale [after] amount [(days | hours)]
Bundle 前置詞可用來包含將在 QlikView 檔中儲存的外部檔案,例如影像或音效檔,或連接到欄位值的物件。
Bundle [Info] ( loadstatement | selectstatement)
如果將串連的兩個資料表有不同的欄位集合,仍然可以強制兩個資料表的串連加上 Concatenate 前置詞。
concatenate[ (tablename ) ] ( loadstatement | selectstatement )
crosstable 前置詞用來將跨維度資料表轉換成連續表,也就是說,將具有多個資料行的寬型表格轉換為高型表格,且資料行標題會替換為單一屬性資料行。
crosstable (attribute field name, data field name [ , n ] ) ( loadstatement | selectstatement )
LOAD 或 SELECT (SQL) 陳述式的 First 前置詞可用來載入資料來源表格的一組最多筆數的記錄。
First n( loadstatement | selectstatement )
generic 前置詞會解壓縮高型表格,每個屬性值建立一個欄位。這類似於樞紐分析表,但不同的是建立的每個欄位會產生一個單一表格。
Generic ( loadstatement | selectstatement )
hierarchy 前置詞用來將上/下層階層表格轉換為可以在 QlikView 資料模型中使用的表格。它可以放在 LOAD 或 SELECT 陳述式的前面,而且將使用載入陳述式的結果作為表格轉換的輸入。
Hierarchy (NodeID, ParentID, NodeName, [ParentName], [PathSource], [PathName], [PathDelimiter], [Depth])(loadstatement | selectstatement)
此前置詞用來將上/下層階層表格轉換為可以在 QlikView 資料模型中使用的表格。它可以放在 LOAD 或 SELECT 陳述式的前面,而且將使用載入陳述式的結果作為表格轉換的輸入。
HierarchyBelongsTo (NodeID, ParentID, NodeName, AncestorID, AncestorName, [DepthDiff])(loadstatement | selectstatement)
此子句搭配 Info 前置詞或 Bundle 前置詞,可用來調整資料庫管理系統的影像大小,以便放入欄位中。
Info [Image_Size(width,height )] ( loadstatement | selectstatement )
info 前置詞用於將文字檔、圖片或視訊之類的外部資訊連結到欄位值。
Info( loadstatement | selectstatement )
join 與 keep 前置詞可接在 inner 前置詞之後。如果加在 join 之前,會指定應該使用內部聯結。產生的表格會因此只包含原始資料表中的欄位值組合,其中兩個表格會呈現連結欄位值。如果加在 keep 之前,會指定兩個原始資料表應先減少到其共同交集之後,然後才儲存到 QlikView 中。 .
Inner ( Join | Keep) [ (tablename) ](loadstatement |selectstatement )
IntervalMatch 前置詞可用來建立一個表格,比對離散數值與一個或多個數值間隔,並選擇性地比對一或數個其他索引鍵的值。
IntervalMatch (matchfield)(loadstatement | selectstatement )
IntervalMatch (matchfield,keyfield1 [ , keyfield2, ... keyfield5 ] ) (loadstatement | selectstatement )
join 前置詞能夠將載入的表格與現有的具名表格或先前最後建立的資料表聯結。
[Inner | Outer | Left | Right ] Join [ (tablename ) ]( loadstatement | selectstatement )
keep 前置詞類似於 join 前置詞。與 join 前置詞一樣,它能夠比較載入的表格與現有的具名表格或先前最後建立的資料表,不過,它不會將載入的表格與現有表格聯結,而會按照表格資料的交集減少一或兩個表格,再將表格儲存在 QlikView 中。進行比較相當於在所有共同欄位上進行自然聯結,也就是如同對應聯結中的方法。不過,兩個表格並未聯結,而是以兩個個別的具名表格保留在 QlikView 中。
(Inner | Left | Right) Keep [(tablename ) ]( loadstatement | selectstatement )
Join 與 Keep 前置詞可接在 left 前置詞之後。
如果加在 join 之前,會指定應該使用左聯結。產生的表格只會包含原始資料表中的欄位值組合,其中第一個表格會呈現連結欄位值。若加在 keep 之前,是指定第二個原始資料表應先減少到與第一個表格的共同交集,然後才儲存到 QlikView 中。
Left ( Join | Keep) [ (tablename) ](loadstatement |selectstatement )
mapping 前置詞可用來建立對應表格,例如用於在指令碼執行期間取代欄位值和欄位名稱。
Mapping ( loadstatement | selectstatement )
NoConcatenate 前置詞會強制將具有相同欄位集的兩個載入標籤在自動串連時視為兩個個別的內部檔案。
NoConcatenate( loadstatement | selectstatement )
明確的 Join 前置詞可接在前置詞 outer 之後,以指定外部聯結。在外部聯結中,會在兩個表格間產生所有組合。產生的表格會因此包含原始資料表格中的欄位值組合,其中一或兩個表格會呈現連結欄位值。outer 關鍵字為選用。
Outer Join [ (tablename) ](loadstatement |selectstatement )
replace 前置詞可用來捨棄整個 QlikView 表格,並將其取代為載入或選取的新表格。
Replace[only](loadstatement |selectstatement |map...usingstatement)
Join 與 Keep 前置詞可接在 right 前置詞之後。
若加在 join 之前,即指定應該使用右聯結。產生的表格只會包含原始資料表格中的欄位值組合,其中第二個表格會呈現連結欄位值。若加在 keep 之前,是指定第一個原始資料表應先減少到與第二個表格的共同交集,然後才儲存到 QlikView 中。
Right (Join | Keep) [(tablename)](loadstatement |selectstatement )
LOAD 或 SELECT 陳述式的 sample 前置詞可用來載入資料來源的隨機記錄樣本。
Sample p ( loadstatement | selectstatement )
透過 semantic 前置詞,即可載入包含記錄之間關係的表格。例如可用於表格內自我參考,其中一個記錄指向其他記錄,如上層、從屬或前任關係。
Semantic ( loadstatement | selectstatement)
unless 前置詞及後置詞用於建立條件式子句,其可決定是否應該評估陳述式或結束子句。其可視為完整 if..end if 陳述式的精簡替代項目。
(Unless condition statement | exitstatement Unless condition )
when 前置詞及後置詞用於建立條件式子句,其可決定是否應該執行陳述式或結束子句。其可視為完整 if..end if 陳述式的精簡替代項目。
( When condition statement | exitstatement when condition )