数据中的通配符
也可能在数据中使用通配符。存在两种不同的通配符:一个是星号,其被看作表示该字段的所有值;以及可选符号,其被看作表示该字段的所有剩余值。
星号
星号,解释为字段中所有(列出的)值,即在此表格中列出的值。如果用于脚本存取部分加载的表格中的系统字段之一(USERID, PASSWORD, NTNAME 或 SERIAL),则星号将被视为此字段的所有(也包括未列出的)可能值。
星号不可用于信息文件。此外,星号还不能用于关键字段,即用于连接表格的字段。
除非是显式指定,否则无星号可用。有关如何在脚本中编写 star 语句的信息,请参阅 Star。
OtherSymbol
在许多情况下,都需要一种在表格中呈现所有其他值的方法,即呈现未在加载数据中显式出现的全部值的方法。为此,可使用称为 OtherSymbol 的特殊变量。要将 OtherSymbol 定义为被视为“所有其他值”,请使用以下语法:
SET OTHERSYMBOL=<sym>;
在 LOAD 或 SELECT 语句之前。<sym> 可以是任意字符串。
内部表格中出现定义符号时,将导致 QlikView 将此符号定义为之前未加载到包含它的字段中的所有值。因此,出现 OtherSymbol 后字段中的值将被忽略。
为了重置此功能,可以使用:
SET OTHERSYMBOL=;
示例:
Table Customers
CustomerID | Name |
---|---|
1 | ABC Inc. |
2 | XYZ Inc. |
3 | ACME INC |
+ | Undefined |
Table Orders
CustomerID | Name |
---|---|
1 | 1234 |
3 | 1243 |
5 | 1248 |
7 | 1299 |
在脚本上述第一个载入的表格之前插入以下语句:
SET OTHERSYMBOL=+;
例如,当单击 OrderID 1299 时,除 1、2 或 3 以外的所有 CustomerID 引用都将导致在 Name 下显示 Undefined。