脚本常规语句
常规语句通常用于以某种方式或其他方式操作数据。这些语句可能被脚本中的行编号覆盖且必须总是以分号“;”终止。
所有脚本关键字可以大小写字符的任意组合输入。用于脚本中的字段和变量名要区分大小写。
使用每个函数的下拉列表可查看每个函数的简短描述和语法。单击语法描述中的函数名称可了解更多信息。
alias 语句用于设置别名。根据此别名,每当后面的脚本中出现相应字段时其都会重命名。
Alias fieldname as aliasname {,fieldname as aliasname}
此语句为脚本执行期间遇到的字段中每个不同的计算值创建唯一的整数值。
Autonumber fields [Using namespace] ]
binary 语句用于加载另一个 QlikView 文档的数据,包括区域权限数据。
Binary [path] filename
提供一种从数据库或电子表格显示表格注释(元数据)的方式。
comment-table tablelist using mapname
comment-table tablename with comment
CONNECT 语句用于定义 Qlik Sense 通过 OLE DB/ODBC 接口访问通用数据库。对于 ODBC,首先需要用 ODBC 管理员指定数据源。
ODBC CONNECT TO connect-string [ ( access_info ) ]
OLEDB CONNECT TO connect-string [ ( access_info ) ]
CUSTOM CONNECT TO connect-string [ ( access_info ) ]
LIB CONNECT TO connection
Declare 语句用于创建字段定义,您可以在其中定义字段或函数之间的关系。可以使用一组字段定义来自动生成可用作维度的导出字段。例如,您可以创建日历定义,并用它来从日期字段生成相关的维度,如年份、月份、周和日期。
definition_name:
Declare [Field[s]] Definition [Tagged tag_list ]
[Parameters parameter_list ]
Fields field_list
[Groups group_list ]
<definition name>:
Declare [Field][s] Definition
Using <existing_definition>
[With <parameter_assignment> ]
Derive 语句用于根据通过使用 Declare 语句创建的字段定义生成导出字段。您可以指定要为其导出字段的数据字段,或者根据字段标签明确或默认导出它们。
Derive [Field[s]] From [Field[s]] field_list Using definition
Derive [Field[s]] From Explicit [Tag[s]] (tag_list) Using definition
Derive [Field[s]] From Implicit [Tag[s]] Using definition
DIRECT QUERY 语句可让您使用 Direct Discovery 函数通过 ODBC 或 OLE DB 连接访问表格。
direct-query [path]
Directory 语句用于定义在后续 LOAD 语句中查找数据文件的目录,直到出现新的 Directory 语句。
Directory [path]
Disconnect 语句用于终止当前 ODBC/OLE DB/自定义连接。此语句为可选。
在执行脚本期间,可以使用 drop field 语句随时从数据模型和内存中删除一个或多个 Qlik Sense 字段。表的 "distinct" 属性在 drop field 语句之后被删除。
drop-field fieldname [ , fieldname2 ...] [from tablename1 [ , tablename2 ...]]
drop fields fieldname [ , fieldname2 ...] [from tablename1 [ , tablename2 ...]]
在执行脚本期间,可以使用 drop table 语句随时从数据模型和内存中删除一个或多个 Qlik Sense 内部表格。
drop-table tablename [, tablename2 ...]
drop tables[ tablename [, tablename2 ...]
Execute 语句用于在 Qlik Sense 加载数据的同时运行其他程序。例如,需要执行转换。
Execute commandline
FlushLog 语句用于强制 Qlik Sense 将脚本缓冲区的内容写入脚本日志文件。
force 语句用于强制 Qlik Sense 将后面的 LOAD 和 SELECT 语句的字段名称和字段值写入方式解释为仅限大写字母,仅限小写字母,总是首字母大写或它们的原初显示形式(大小写混合)。此语句可以根据不同的惯例关联表格的字段值。
Force ( capitalization | case upper | case lower | case mixed )
LOAD 语句可以加载以下来源的字段:文件、脚本中定义的数据、预先载入的输入表格、网页、后续 SELECT 语句产生的结果或自动生成的数据。还可从分析连接加载数据。
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 ]
[extension pluginname.functionname(tabledescription)]
let 语句是 set 语句的补充,用于定义脚本变量。相对于 set 语句,let 语句在其被分配到变量之前可以在脚本运行时计算等号“=”右边的表达式。
Let variablename=expression
在使用 Loosen Table 语句执行脚本期间,一个或多个 Qlik Sense 内部数据表格可以明确声明松散耦合。当表格是松散耦合时,表格中字段值之间的所有关联都会被移除。通过独立加载松散耦合表格(未相互连接的表格)的每个字段可以达到类似的效果。在对数据结构临时独立的不同部分进行测试时,松散耦合会非常有用。松散耦合表格在表格查看器中将以虚线进行标识。执行脚本之前,在脚本中使用一个或多个 Loosen Table 语句将使 Qlik Sense 忽略任何松散耦合表设置。
tablename [ , tablename2 ...]
Loosen Tables tablename [ , tablename2 ...]
map ... using 语句用于将某些字段值或表达式映射为特定映射表的值。映射表可通过 Mapping 语句创建。
Map *fieldlist Using mapname
NullAsNull 语句用于关闭 NULL 语句之前设置的从 NullAsValue 值到字符串值的转换。
NullAsNull *fieldlist
NullAsValue 语句用于指定应将 NULL 值转换为值的字段。
NullAsValue *fieldlist
Qualify 语句用于打开字段名限制条件,即字段名将表格名作为前缀。
Qualify *fieldlist
rem 语句用于插入备注或注释到脚本,或暂时关闭脚本语句而无需移除脚本。
Rem string
此脚本函数用于在加载一个或多个现有 Qlik Sense 字段后对其进行重命名。
rename-field (using mapname | oldname to newname{ , oldname to newname })
Rename Fields (using mapname | oldname to newname{ , oldname to newname })
此脚本函数用于在加载一个或多个现有 Qlik Sense 内部表格后对其进行重命名。
rename-table (using mapname | oldname to newname{ , oldname to newname })
Rename Tables (using mapname | oldname to newname{ , oldname to newname })
使用 section 语句,可以定义随后的 LOAD 和 SELECT 语句应视为数据还是访问权限定义。
Section (access | application)
可通过标准 SQL SELECT 语句从 ODBC 数据源或 OLE DB 提供商选择字段。然而,是否接受 SELECT 语句取决于所使用的 ODBC 驱动程序或 OLE DB 提供程序。
Select [all | distinct | distinctrow | top n [percent] ] *fieldlist
From tablelist
[Where criterion ]
[Group by fieldlist [having criterion ] ]
[Order by fieldlist [asc | desc] ]
[ (Inner | Left | Right | Full)Join tablename on fieldref = fieldref ]
set 语句用于定义脚本变量。这些变量可用来替代字符串,路径和驱动程序等。
Set variablename=string
sleep 语句用于在指定的时间暂停脚本执行。
Sleep n
SQL 语句可通过 ODBC 或 OLE DB 连接发送任意 SQL 命令。
SQL sql_command
sqlcolumns 语句用于返回描述 ODBC 或 OLE DB 数据源的列以建立 connect 的字段集。
sqltables 语句用于返回描述 ODBC 或 OLE DB 数据源的表格以建立 connect 的字段集。
sqltypes 语句用于返回描述 ODBC 或 OLE DB 数据源的类型以建立 connect 的字段集。
该字符串用于呈现数据库中字段的全部值设置,可以通过 star 语句设置。星号可以影响随后的LOAD 和 SELECT 语句。
Star is [ string ]
Store 语句创建 QVD、Parquet、CSV 或 TXT 文件。
Store [ *fieldlist from] table into filename [ format-spec ];
此脚本语句提供了一种将标记分配给一个或多个字段或表格的方法。如果试图标记应用程序中不存在的字段或表格,则将忽略该标记。如果出现字段名和标记名冲突的情况,将使用最后出现的值。
Tag[field|fields] fieldlist with tagname
Tag [field|fields] fieldlist using mapname
Tag table tablelist with tagname
trace 语句用于将字符串写入脚本执行进度窗口和脚本日志文件中。这对调试过程很有用。使用在 trace 语句之前计算的 $ 变量扩展可以自定义消息。
Trace string
Unmap 语句可禁用由之前的 Map … Using 语句为后来加载的字段指定的字段值映射。
Unmap *fieldlist
Unqualify 语句用于断开前面由 Qualify 语句打开的字段名限制条件。
Unqualify *fieldlist
此脚本语句提供了一种从字段或表中删除标记的方法。如果试图取消标记应用程序中不存在的字段或表格,则将忽略该取消标记。
Untag[field|fields] fieldlist with tagname
Tag [field|fields] fieldlist using mapname
Tag table tablelist with tagname