Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Область применения:SQL Server
среда выполнения интеграции SSIS в Фабрика данных Azure
Выражения могут содержать числовые, строковые и логические литералы. Средство оценки выражений поддерживает различные числовые литералы, такие как целые числа, десятичные дроби и константы с плавающей точкой. Механизм вычисления выражений также поддерживает суффиксы long и float, которые определяют, как он обрабатывает значения, а также научную нотацию в числовых литералах.
Числовые литералы
Средство оценки выражений поддерживает целочисленные и нецелочисленные типы числовых данных. Также поддерживаются идентификаторы родословной — уникальные числовые идентификаторы элементов пакета. Идентификаторы родословной — это числа, но их нельзя использовать в математических вычислениях.
Средство оценки выражений поддерживает суффиксы, которые указывают, как механизм вычисления выражений использует числовые литералы. Например, вы можете указать, что целое 37 число рассматривается как длинный целочисленный тип данных, записав 37L или 37l.
В следующей таблице приведены суффиксы для числовых литералов.
| Суффикс | Описание |
|---|---|
L или l |
Длинный числовой литерал. |
U или u |
Числовой литерал без знака. |
E или e |
Показатель степени в научной нотации |
Следующая таблица содержит перечень элементов числовых выражений и их регулярных выражений.
| Элемент выражения | Регулярное выражение | Описание |
|---|---|---|
Цифры, выраженные как D. |
[0-9] |
Любая цифра. |
Научная нотация, выражаемая как E. |
[Ee][+-]?{D}+ |
Заглавные или строчные буквы e, необязательно + или -, и одна или несколько цифр, определенных в D. |
Целочисленный суффикс, выраженный как IS. |
(([lL]?[uU]?)|([uU]?[lL]?)) |
При необходимости используйте прописные или строчные u и l либо комбинацию u и l.
U или u указывает неподписанное значение.
L или l указывает на длинное значение. |
Суффикс float, выраженный как FS. |
([f|F]|[l|L]) |
Заглавные или строчные буквы f или l.
F или f указывает на плавающее значение (DT_R4 тип данных).
L или l указывает длинное значение (DT_R8 тип данных). |
Шестинадцатеричная цифра, выражаемая как H. |
[a-fA-F0-9] |
Любая шестнадцатеричная цифра. |
Следующая таблица описывает допустимые числовые литералы с помощью языка регулярных выражений.
| Регулярное выражение | Описание |
|---|---|
{D}+{IS} |
Интегральный числовой литерал с как минимум одной цифрой (D) и, по необходимости, с длинным и беззнаковым суффиксом (IS). Примеры: 457, 785u, 986L, и 7945ul. |
{D}+{E}{FS} |
Неинтегральный числовой литерал с как минимум одной цифрой (D), научной нотацией и длинным или плавающим суффиксом. Примеры: 4E8l, 13e-2f, и 5E+L. |
{D}*"."{D}+{E}?{FS} |
Нецелочисленный числовой литерал, состоящий из десятичного разделителя, десятичной дроби как минимум с одной цифрой (D), необязательной экспоненты (E) и одного идентификатора float или long (FS). Этот числовой литерал имеет тип данных DT_R4 или DT_R8. Примеры: 6.45E3f, .89E-2l, и 1.05E+7F. |
{D}+"."{D}*{E}?{FS} |
Неинтегральный числовой литерал с как минимум одной значительной цифрой (D), десятичным числом, показателем (E), и одним плавающим или одним длинным идентификатором (FS). Этот числовой литерал имеет тип данных DT_R4 или DT_R8. Примеры: 1.E-4f, 4.6E6L, и 8.365E+2f. |
{D}*.{D}+ |
Нецелочисленный числовой литерал с масштабом и точностью. Он имеет десятичный знак и десятичную дробь с как минимум одной цифрой (D). Этот числовой литерал имеет тип данных DT_NUMERIC. Примеры: .9, 5.8, и 0.346. |
{D}+.{D}* |
Нецелочисленный числовой литерал с точностью и масштабом. В нём есть как минимум одна значимая цифра (D) и десятичный знак. Этот числовой литерал имеет тип данных DT_NUMERIC. Примеры: 6., 0.2, и 8.0. |
#{D}+ |
Идентификатор происхождения. Он состоит из символа фунта (#) и как минимум одной цифры (D). Примеры: #123. |
0[xX]{H}+{uU} |
Числовой литерал в шестнадцатиричном формате. Сюда входят ноль, буква x в верхнем или нижнем регистре, как минимум одна заглавная H и, при необходимости, беззнаковый суффикс. Примерами являются события 0xFF0A и 0X000010000U. |
Дополнительные сведения о типах данных, которые использует средство оценки выражений, см. в разделе Типы данных служб Integration Services.
Выражения могут включать числовые литералы с различными типами данных. Когда средство оценки выражений вычисляет эти выражения, оно преобразует данные в совместимые типы. Дополнительные сведения см. в разделе Integration Services Data Types in Expressions.
Преобразование между некоторыми типами данных требует явного приведения. Модуль вычисления выражений предоставляет оператор приведения типов для явного преобразования типов данных. Дополнительные сведения см. в разделе Преобразование типа (выражение SSIS).
Сопоставьте числовые литералы с типами данных Integration Services
Вычислитель выражения преобразует числовые литералы следующим образом:
Интегральный числовой литерал соответствует целочисленному типу данных в зависимости от суффикса:
Суффикс Тип результата нет DT_I4 UDT_UI4 LDT_I8 ULDT_UI8 Внимание
Если суффикс long (
Lилиl) отсутствует, средство вычисления выражений сопоставляет знаковые значения типу данных DT_I4, а беззнаковые значения — типу данных DT_UI4, даже если значение выходит за пределы этого типа данных.Числовой литерал, содержащий экспоненту, преобразуется либо в тип данных DT_R4, либо в тип данных DT_R8. Если выражение включает длинный суффикс, оно преобразуется в DT_R8. Если он включает суффикс float, он преобразуется в тип данных DT_R4.
Если нецелочисленный числовой литерал содержит
Fилиf, он сопоставляется с типом данных DT_R4. Если он включаетLилиlи число является целым числом, оно отображается в DT_I8 тип данных. Если это реальное число, оно соответствует DT_R8 типу данных. Если значение содержит длинный суффикс, оно преобразуется в тип данных DT_R8.Нецелочисленный числовой литерал с точностью и масштабом сопоставляется с типом данных DT_NUMERIC.
Строковые литералы
Оберните строковые литералы в кавычки. Язык выражений предоставляет набор экранирующих последовательностей для часто экранируемых символов, таких как непечатаемые символы и кавычки.
Строковый литерал состоит из нуля или более символов, заключенных в кавычки. Если строка содержит кавычки, экранируйте их, чтобы выражение можно было разобрать. Строка может содержать любой двухбайтовый символ, кроме \x0000, поскольку символ \x0000 является нулевым терминатором строки.
Строки могут включать другие символы, требующие управляющей последовательности. В следующей таблице перечислены экранирующие последовательности для строковых литералов.
| escape-последовательность | Описание |
|---|---|
\a |
Предупреждение |
\b |
Backspace |
\f |
Подача страницы |
\n |
Новая строка |
\r |
Возврат каретки |
\t |
Горизонтальная табуляция |
\v |
Вертикальная табуляция |
\" |
Кавычка |
\ |
Обратная косая черта |
\xhhhh |
Символ Юникод в шестнадцатеричной записи |
Логические литералы
Средство оценки выражений поддерживает обычные логические литералы: True и False. Оценщик выражений не чувствителен к регистру и допускает любую комбинацию заглавных и строчных букв. Например, TRUE работает так же, как и True.
Примечание.
В выражении необходимо разграничить булевую литераль пробелами.