Программирование >>  Программный интерфейс приложений 

1 ... 189 190 191 [ 192 ] 193 194 195 ... 264


Окончание табл. В. 1

Последова- Описание тельность

е 1! е 2 Соответствует элементу образца е 1 или е2

е{т} Соответствует т экземплярам элемента образца е

е {т,} Соответствует т или более экземплярам элемента образца е

е {, п} Соответствует 0-п экземплярам элемента образца е

е {т, п} Соответствует т-п экземплярам элемента образца е

(- ) Групповые элементы образца в одном элементе

Другая Неспециальные символы, которые соответствуют самим себе

Оператор regexp равен 1, если строка образца pat соответствует строке выражения ехрг. В противном случае этот оператор равняется 0. Оператор not regexp работает с точностью до наоборот. В этой связи следующие выражения эквивалентны:

str not regexp pat

not {str regexp pat)

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

Образец необязательно должен соответствовать полной строке, достаточно соответствия какой-либо ее части.

Конструкции [. . . ] и [- ...] определяют классы символов. Внутри класса можно определить диапазон символов, указав разделенные дефисом крайние значения диапазона. Конструкция [a-z], например, соответствует любой букве нижнего регистра, а [0-9] соответствует любой цифре. Чтобы определить в диапазоне символ ] , его нужно ввести в качестве первого символа класса. Для определения символа - внутри диапазона необходимо ввести его первым или последним в классе. Наконец, чтобы ввести символ не нужно устанавливать его первым символом после [ .

Для использования в классах символов могут также применяться некоторые другие более сложные конструкции. Обратитесь к справочному руководству по MySQL для получения подробной информации о них.

Сравнение с расщиренными регулярными выражениями считается успещным, если заданный образец найден в любой части строки. Для сравнения образца только с началом или концом строки можно использовать символы и $ .



abcde regexp b =>!

abcde regexp b 0

abcde regexp b$ i, , -O

abcde regexp a l abcde regexp e$

abcde regexp a.*e$ l

Регистр символов при сравнении с расширенными регулярными выражениями учитывается:

abc regexp abc -о

abc regexp abc

Str rlike pat; Str not rlike pat. Операторы rlike и not rlike аналогичны операторам regexp и not regexp.

Для определения специальных последовательностей внутри строк MySQL используется такой же синтаксис, как и в языке С. Последовательности \п , \t и \\ , например, интерпретируются соответственно как символы перехода на новую строку, табуляции и обратной косой чертьг Чтобы определить эти символы в образце, достаточно добавить впереди еще одну обратную косую черту ( \\п , \\t , WW ). Одна обратная косая черта в процессе синтаксического анализа запроса обязательно удаляется, после чего следующая за ним последовательность соответствующим образом интерпретируется при сравнении строки с образцом.

Функции

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

now () - правильно,

now о - неправильно

Задаваемые функции задаются несколькими параметрами, они разделяются запятыми. Пробелы между параметрами допустимы.

concat( abc , de f ) - правильно;

concat { abc , def ) - также правильно

Функции сравнения

greatest (exprl,exprl, . ..). Возвращает наибольший аргумент. Наибольший среди заданных аргументов определяется в соответствии со следующими правилами.



Если все задаваемые в функции аргументы являются целыми значениями, то они сравниваются как целые.

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

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

GREATEST(2, 3,1) 3

GREATEST(38.5, 94.2,-1) Ф94.2

GREATEST ( а , ab , abc ) => abc

GREATEST(1,3,5) 5

GREATEST( A , b , C ) c

GREATEST(BINARY A , b , C ) ъ

Функция GREATEST о Впервые появилась в MySQL 3.22.5. В более ранних версиях вместо нее можно использовать функцию МАХ ().

lF{expr],expr2,expr3}. Если аргумент exprl истинен (не О или NULL), возвращается аргумент ехрг2. В противном случае эта функция возврашает аргумент ехргЗ. Функция IF() возвращает число или строку в соответствии с контекстом, в котором задается. IF(1, true , false ) true

IF(0, true , false ) * false

IF(NULL, true , false ) false

IF(1.3, non-zero , zero ) non-zero

IF(0. 3, non-zero , zero ) => zero

IF(0.3 != 0, non-zero , zero ) => non-zero

Аргумент expr вычисляется как целое значение, и в последних трех примерах показано, какая ошибка может возникнуть в результате невнимательности пользователя. Вещественное значение L3 преобразуется в целое значение 1, которое является истинным. Однако 0.3 преобразуется в целое значение О, которое является ложным. В последнем примере списка показан правильный вариант использования чисел с плавающей запятой. Воспользуйтесь им при выполнении сравнения. В результате этого сравнения возвратится 1 или О в зависимости от результата проверки.

iFNUhhiexprl,ехрг2). Эта функция возврашает аргумент ехрг2, если выражение ехрг] имеет значение NULL. В противном случае эта функция возвращает аргумент ехрг]. Функция IFNULLO возвращает число или строку в зависимости от контекста, в котором задается.



1 ... 189 190 191 [ 192 ] 193 194 195 ... 264

© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки.
Яндекс.Метрика