Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
all_lab.doc
Скачиваний:
56
Добавлен:
14.11.2019
Размер:
1.42 Mб
Скачать

5. Математические функции в MySql. Строковые функции. Работа с датой Математические функции MySql

MySQL, как и любая другая СУБД, обладает большим числом встроенных функций. Так же, как и в любом другом языке программирования, функции характеризуются именем и аргументами, которые перечисояются за именем в круглых скобках. Если аргументы у функции отсутствуют, круглые скобки все равно следует указывать, например, NOW(). Отличительной чертой MySQL является то, что при использовании функций пробелы между именем функции и круглыми скобками недопустимы, т.е. написание NOW() правильное, а NOW () уже нет. Результат функции подставляется в место вызова функции.

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

Рассмотрим некоторые из математических функций.

ABS (число)

Эта функция возвращает модуль числа

SQL – скрипт

Результат

SELECT abs (-4.05022);

4.05022

SELECT abs (2);

2

CEIL(число)

Эта функция округляет число до ближайшего большего целого числа.

SQL – скрипт

Результат

SELECT ceiling (1.3)

2

SELECT ceil (1.03)

2

SELECT ceil (-1.3)

-1

LN (число) или LOG (число)

Эта функция возвращает натуральный логарифм числа.

SQL – скрипт

Результат

SELECT ln (2)

0.693147

SELECT ln (-2)

Null

LOG(число1, число2)

При вызове с одним параметром функция LOG возвращает натуральный логарифм числа, а при вызове с двумя параметрами - возвращает логарифм числа2 по основанию число1.

SQL – скрипт

Результат

SELECT log (2, 65536)

16.000000

SELECT log (1, 100)

Null

MOD(число1, число2)

число1 % число2

число1 MOD число2

Эта функция возвращает остаток от деления первого числа на второе подобно оператору %.

SQL – скрипт

Результат

SELECT mod (234, 10)

4

SELECT 253 % 7

1

SELECT mod (29, 9)

2

RAND ([число])

Возвращает случайное число с плавающей точкой в диапазоне от 0.0 до 1.0. Если указан целочисленный аргумент, он служит начальным числом для генератора случайных чисел (генерируя повторяющуюся последовательность). Если аргумент отсутствует, используется значение системных часов.

Функцию можно использовать для извлечения строк в случайном порядке.

SELECT * FROM имя_таблицы ORDER BY RAND();

ORDER BY RAND() в комбинации с LIMIT удобно для выбора случайного примера из набора строк:

SELECT * FROM tablel, table2 WHERE a=b AND c<d

-> ORDER BY RAND() LIMIT 1000;

Следует отметить, что RAND() в конструкции WHERE вычисляется заново при каждом выполнении WHERE.

SQRT (число)

Эта функция возвращает квадратный корень числа

SQL – скрипт

Результат

SELECT sqrt (15)

3.872983

SELECT sqrt (4)

2.000000

SELECT sqrt (20)

4.472136

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]