在脚本中使用引号

可以通过多种不同方法在脚本语句中使用引号。

LOAD语句内

LOAD语句内,以下符号应用作引号:

  说明 符号 代码点 示例

字段名称

双引号

" " 34 “字符串”
  方括号 [ ] 91, 93 [字符串]
  重音符号 ` ` 96 `字符串`

字符串文字

单引号

' '

39 ‘字符串’

SELECT语句中

对于 SELECT语句(由ODBC 驱动程序解释),情况或许稍有不同。通常,对于字段名和表格名应使用直双引号 (Alt + 0034),对于文字应使用直单引号(Alt + 0039),并避免使用重音符号。但是,一些ODBC驱动程序不仅将重音符号视为引号,而且首选重音符号。在这种情况下,生成的 SELECT语句包含重音引号。

Microsoft Access引号示例

Microsoft Access ODBC Driver 3.4(包括在 Microsoft Access 7.0 中)在分析 SELECT 语句时接受以下引号:

字段名和表格名:

[ ]

" " ` `

字符串文字:

' '

其他数据库可能具有不同的约定。

LOAD语句外

LOAD语句外,QlikView 期望在表达式中使用双引号表示变量引用,而不是字段引用。如果使用双引号,则应将括起来的字符串解释为变量和将要使用的变量的值。

上下文外字段引用和表格引用

一些脚本函数引用已创建的字段,或者 LOAD语句输出中的字段,如 Exists()Peek()。这些字段引用被称为上下文外字段引用,与引用上下文中的字段的源字段引用相对,即 LOAD语句输入表中的字段。

应将上下文外字段引用和表格引用看作是文字,因此需要使用单引号。

名称和文字之间的差异

比较以下示例,名称和文字之间的差异会变得更加清晰:

示例:  

'Sweden' as Country

如果在 LOADSELECT 语句中将此表达式用作字段列表的一部分,则会将文本字符串“Sweden”作为字段值加载到 QlikView 字段“Country”。

示例:  

"land" as Country

如果在 LOADSELECT 语句中将此表达式用作字段列表的一部分,则会将数据库字段的内容和名为“land”的表格列作为字段值加载到 QlikView 字段“Country”。这意味着会将 land视为字段引用。

数值和字符串文字之间的差异

比较以下示例,数值和字符串文字之间的差异会变得更加清晰:

示例:  

'12/31/96'

如果将此字符串用作表达式的一部分,则会在第一步中将其解释为文本字符串“12/31/96”,这反过来也可以将其解释为日期,如果日期格式为“MM/DD/YY”。在这种情况下,会将它存储作为同时包含数字和文字表示形式的对偶值。

示例:  

12/31/96

如果将此字符串用作表达式的一部分,则会将它解释为 12除以 31 除以 96 的数字。

在字符串中使用单引号字符

如果需要在字符串中包含单引号字符,可以使用额外的单引号作为转义字符。

示例:  

字符串 '10 O''clock News'将解释为 10 点钟的新闻。