Uso de las comillas en el script

Podemos utilizar las comillas de diversas maneras en las sentencias de script.

Dentro de sentencias LOAD

En una sentencia LOAD los símbolos siguientes pueden usarse como comillas:

  Descripción Símbolo Punto de código Ejemplo

Nombres de campo

comillas dobles

" " 34 "cadena"
  corchetes [ ] 91, 93 [cadena ]
  comillas oblicuas ` ` 96 `cadena`

Literales de cadena

comillas simples

' '

39 'cadena'

En sentencias SELECT

Para una sentencia SELECT interpretada por un driver ODBC esto puede variar ligeramente. En general, se deben usar las comillas dobles rectas (Alt + 0034) para nombres de campos y tablas y las comillas simples rectas (Alt + 0039) para literales, y evitar las comillas oblicuas. Sin embargo, algunos drivers ODBC no sólo aceptan las comillas oblicuas como símbolo de entrecomillado, sino que las prefieren. En tal caso, las sentencias SELECT generadas contienen comillas oblicuas.

Ejemplo de comillas en Microsoft Access

El Microsoft Access ODBC Driver 3.4 (incluido en Microsoft Access 7.0) acepta los siguientes símbolos de entrecomillado cuando analiza la sentencia SELECT:

Nombres de campo y Nombres de tabla:

[ ]

" " ` `

Literales de cadena:

' '

Otras bases de datos pueden tener distintas convenciones.

Fuera de sentencias LOAD

Fuera de una sentencia LOAD, en lugares en los que QlikView espera una expresión, las comillas dobles indican una referencia variable y no una referencia de campo. Si utilizamos las comillas dobles, la cadena incluida en ellas se interpretará como una variable y se utilizará el valor de la variable.

Referencias de campo fuera de contexto y referencias de tabla

Algunas funciones de script se refieren a campos que ya han sido creados, o están en la salida de una sentencia LOAD, por ejemplo Exists() y Peek(). Estas referencias de campo reciben el nombre de referencias de campo fuera de contexto, a diferencia de las referencias de campo fuente que remiten a campos que están dentro de contexto, es decir, en la tabla de entrada de la sentencia LOAD.

Las referencias de campo fuera de contexto y referencias de tabla deberían considerarse como literales y por lo tanto necesitan comillas simples.

Diferencia entre nombres y literales

La diferencia entre los nombres y literales es clara si comparamos los siguientes ejemplos:

Ejemplo:  

'Sweden' as Country

Cuando esta expresión se utiliza como parte de la lista de campos en una sentencia LOAD o SELECT, la cadena de texto "Sweden" se cargará como un valor de campo en el campo "Country" de QlikView.

Ejemplo:  

"land" as Country

Cuando esta expresión se utiliza como parte de la lista de campos en una sentencia LOAD o SELECT, el contenido del campo de la base de datos o la columna de tabla denominada "land" se cargará como valores de campo en el campo "Country" de QlikView. Esto significa que land se trata como una referencia a un campo.

Diferencia entre números y literales de cadena

La diferencia entre números y literales de cadena es clara si comparamos los siguientes ejemplos:

Ejemplo:  

'12/31/96'

Cuando esta cadena se usa como parte de una expresión, en una primera instancia se interpretará como la cadena de texto "12/31/96", la cual a su vez puede ser luego interpretada como una fecha si el formatode fecha es ‘MM/DD/YY’. En tal caso se almacenará como un valor dual con una representación tanto numérica como textual.

Ejemplo:  

12/31/96

Cuando esta cadena se usa como parte de una expresión, se interpretará numéricamente como 12 dividido por 31 dividido por 96.

Usar comillas simples en una cadena

Si necesita incluir caracteres de entrecomillado simple en una cadena, puede utilizar una comilla simple extra como carácter de escape.

Ejemplo:  

La cadena '10 O''clock News' se interpretará como las Noticias de las 10 en punto.