Поделиться через


< (меньше) (выражение служб SSIS)

Применимо к: SQL Server Integration Runtime служб SSIS в Фабрика данных Azure

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

Примечание

Данный оператор не поддерживает сравнение с использованием типов данных DT_TEXT, DT_NTEXT и DT_IMAGE.

Однако для успешного выполнения выражения некоторые типы данных требуют, чтобы выражение включало в себя явное приведение. Дополнительные сведения о допустимых приведениях типов данных см. в разделе Приведение (выражение служб SSIS).

Синтаксис

  
expression1 < expression2  
  

Аргументы

expression1, expression2
Любое допустимое выражение.

Типы результата

DT_BOOL

Комментарии

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

Наборы выражений expression1 и expression2должны удовлетворять одному из следующих правил:

  • Числовой Как expression1 , так и expression2 должны иметь числовой тип данных. В соответствии с правилами неявных числовых преобразований, выполняемых средством оценки выражений, пересечением типов данных должен быть числовой тип данных. NULL не может быть значением пересечения двух числовых типов данных. Дополнительные сведения см. в разделе Integration Services Data Types in Expressions.

  • Символьный . Значения выражений expression1 и expression2 должны иметь тип данных DT_STR или DT_WSTR. Вычисленные значения этих двух выражений могут иметь различные строковые типы данных.

    Примечание

    Сравнения строк производятся с учетом регистра, диакритических знаков, японской азбуки и ширины символов.

  • Дата, время или дата-время . Значения выражений expression1 и expression2 должны иметь один из следующих типов данных: DT_DBDATE, DT_DATE, DT_DBTIME, DT_DBTIME2, DT_DBTIMESTAMP, DT_DBTIMESTAMP2, DT_DBTIMESTAPMOFFSET и DT_FILETIME.

    Примечание

    Система не поддерживает сравнения выражений, значения которых имеют тип данных даты, времени или даты-времени. Возникнет ошибка.

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

    • Если значения двух выражений имеют один и тот же тип данных, выполняется сравнение для этого типа.

    • Если значение одного из выражений имеет тип данных DT_DBTIMESTAMPOFFSET, то другое будет неявно преобразовано в тип данных DT_DBTIMESTAMPOFFSET, после чего будет произведено сравнение для этого типа. Дополнительные сведения см. в разделе Integration Services Data Types in Expressions.

    • Если значение одного из выражений имеет тип данных DT_DBTIMESTAMP2, то другое будет неявно преобразовано в тип данных DT_DBTIMESTAMP2, после чего будет произведено сравнение для этого типа.

    • Если значение одного из выражений имеет тип данных DT_DBTIME2, то другое будет неявно преобразовано в тип данных DT_DBTIME2, после чего будет произведено сравнение для этого типа.

    • Если значение одного из выражений имеет тип данных, отличный от DT_DBTIMESTAMPOFFSET, DT_DBTIMESTAMP2 или DT_DBTIME2, то перед началом сравнения значения будут преобразованы в тип данных DT_DBTIMESTAMP.

    При сравнении выражений система исходит из следующих предположений.

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

    • Если оба выражения имеют тип даты, но смещение часового пояса присутствует только у одного из них, то предполагается, что дата без смещения выражена по Гринвичу (UTC).

Дополнительные сведения о типах данных см. в разделе Integration Services Data Types.

Примеры выражений

Этот пример возвращает значение TRUE, если текущая дата равна 4 июля 2003 года или позже. Дополнительные сведения см. в разделе GETDATE (выражение Integration Services).

"7/4/2003" < GETDATE()  

Результат вычисления данного примера равен TRUE, если значение в столбце ListPrice меньше 500.

ListPrice < 500  

В данном примере используется переменная LPrice. Он возвращает TRUE, если значение LPrice меньше 500. Чтобы выполнился синтаксический анализ выражения, тип данных этой переменной должен быть числовым.

@LPrice < 500  

См. также

> (больше) (выражение Integration Services)
>= (больше или равно) (выражение служб SSIS)
<= (меньше или равно) (Выражение Integration Services)
Очередность и ассоциативность операторов
Операторы (выражение служб SSIS)