Этот предикат предназначен для спецификации сравнения двух строчных значений. Синтаксис предиката следующий:
comparison_predicate ::= row_value_constructor comp_op row_value_constructor comp_op ::= = | <> ("неравно")| < | > | <= "меньше или равно"| >= "больше или равно"
Строки, являющиеся операндами операции сравнения, должны быть одинаковой степени. Типы данных соответствующих значений строк-операндов должны быть совместимы.
Пусть X и Y обозначают соответствующие элементы строк-операндов, а xv и yv - их значения. Тогда:
При этом:
Сравнение двух символьных строк производится следующим образом:
Сравнение двух битовых строк Xи Y основано на сравнении соответствующих бит. Если Xi и Yi - значения i-тых бит X и Y соответственно и если lx и ly обозначает длину в битах X и Y соответственно, то:
Сравнение двух значений типа дата-время производится в соответствии с видом интервала, который получается при вычитании второго значения из первого. Пусть X и Y - сравниваемые значения, а H - наименее значимое поле даты-времени X и Y. Результат сравнения X comp_op Y определяется как (X - Y) H comp_ op INTERVAL (0) H. (Два значения типа дата-время сравнимы только в том случае, если они содержат одинаковый набор полей даты-времени.)