# Использование кавычек в скрипте

Существует несколько различных способов использования кавычек в операторах скриптов.



## Внутри операторов 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, там, где программа Qlik Sense ожидает выражение, двойные кавычки обозначают ссылку на переменную, а не на поле. Если вы используете двойные кавычки, строка внутри кавычек будет интерпретироваться как переменная, значение которой будет использовано.

## Ссылки на поле и ссылки на таблицы вне контекста

В некоторых функциях скрипта указываются ссылки на ранее созданные поля или на поля, которые являются результатом выполнения оператора LOAD, например Exists() и Peek(). Эти ссылки на поля называются внеконтекстными ссылками на поля, в отличие от ссылок на исходные поля, которые ссылаются на поля, находящиеся в контексте, то есть во входной таблице оператора LOAD.

Внеконтекстные ссылки на поля и ссылки на таблицы следует рассматривать как литералы, и поэтому их следует указывать в одиночных кавычках.

## Различия между именами и литералами

Разница между именами и литералами становится очевидной при сравнении следующих примеров:

Пример:

` 'Sweden' as Country
                 `

Когда данное выражение является частью списка полей в операторе LOAD или SELECT, текстовая строка «Sweden» будет загружена в качестве значения поля в поле Qlik Sense «Country».

Пример:

` "land" 
as Country
                 `

Когда данное выражение является частью списка полей в операторе LOAD или SELECT, содержимое поля базы данных или столбца таблицы с именем «land» будет загружено в качестве значения поля в поле Qlik Sense «Country». Это означает, что land будет рассматриваться как ссылка на поле.

## Различия между числами и строковыми литералами

Разница между числами и строковыми литералами становится очевидной при сравнении следующих примеров.

Пример:

` '12/31/96'
                 `

Если данная строка используется как часть выражения, в первом шаге она будет интерпретироваться как текстовая строка "12/31/96", которая в свою очередь может интерпретироваться как дата, если выбран формат даты 'MM/DD/YY'. В этом случае она будет храниться как двойное значение с числовым и текстовым представлениями.

Пример:

` 12/31/96
                 `

Когда эта строка используется как часть выражения, она будет интерпретироваться как числовое выражение, то есть как 12, деленное на 31, деленное на 96.

## Использование кавычек в строке

Если строка содержит символы, которые можно использовать в качестве кавычек, важно точно указать начало и конец строки, заключаемой в кавычки. Неправильное проставление кавычек может привести к сбою скрипта или некорректной загрузке данных.

Существует два варианта использования кавычек для строки, содержащей кавычки.

### Использование кавычек определенного вида для строки

Выберите кавычки того вида, который не используется внутри строки, и заключите в эти кавычки строку полностью. Qlik Sense будет использовать эти кавычки для определения начала и конца строки.

Заключить строку целиком можно в любые из следующих кавычек:

* Двойные кавычки " "
* Квадратные скобки [ ]
* Апострофы ` `
* Одиночные кавычки ' '

Пример:

`[Table '1 "2"]`

Строка заключается в квадратные скобки. Строка загружается в следующем виде: Таблица '1 "2"

``'string `Name1` "Name2'``

Строка заключается в одиночные кавычки. Строка загружается в следующем виде: строка `Имя1` "Имя2

### Использование escape-символов

Escape-символ — это дополнительное вхождение кавычек, в которые заключена строка. Такие символы следует добавлять при каждом вхождении кавычек в строке. Если в строке используются кавычки всех видов, необходимо расположить escape-символы рядом с теми кавычками, в которые заключена строка. Также escape-символы позволяют повторно использовать кавычки, которые уже содержатся в строке.

В качестве escape-символов можно использовать только следующие кавычки:

* Двойные кавычки " "
* Квадратные скобки [ ]
* Одиночные кавычки ' '

Пример:

`"Michael said ""It's a beautiful day""."`

Если строка заключена в двойные кавычки " ", следует расположить дополнительные двойные кавычки рядом со всеми двойными кавычками, содержащимися в строке.

Строка загружается в следующем виде: Миша сказал: "Какой чудесный день". При помощи escape-символа `""` редактор загрузки данных Qlik Sense определяет, какие двойные кавычки входят в состав строки, а какие указывают на ее конец. Одиночная кавычка ' в сокращении It's не должна сопровождаться escape-символом, так как она не используется для заключения строки в кавычки.

Пример:

`'Michael said: "It''s a beautiful day".'`

Если строка заключена в одиночные кавычки, следует расположить дополнительную одиночную кавычку рядом с каждой одиночной кавычкой, содержащейся в строке.

Строка загружается в следующем виде: Миша сказал: "Какой чудесный день". Двойные кавычки ", в которые заключены слова Миши, не должны сопровождаться escape-символами, так как они не используются для заключения строки в кавычки.

Пример:

`[Michael said [It's a "beautiful day]].]`

Квадратные скобки [ ] ведут себя иначе, чем кавычки двух других видов. Если необходимо использовать квадратные скобки в качестве escape-символов, следует расположить дополнительную квадратную скобку лишь рядом с правой скобкой ], а не с левой скобкой [.

Строка загружается в следующем виде: Миша сказал [Какой "чудесный день]. Только правая квадратная скобка ] сопровождается escape-символом. Одиночная кавычка ' и двойные кавычки, содержащиеся в строке, не должны сопровождаться escape-символами, так как они не используются для заключения строки в кавычки.

## Подробнее

* [Load](https://help.qlik.com/ru-RU/sense/November2025/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptRegularStatements/Load.htm)
* [Select](https://help.qlik.com/ru-RU/sense/November2025/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptRegularStatements/Select.htm)
* [Операторы и ключевые слова скрипта](https://help.qlik.com/ru-RU/sense/November2025/Subsystems/Hub/Content/Sense_Hub/Scripting/script-statements-keywords.htm)