Разные функции

 

DATABASE()

Возвращает имя текущей базы данных:

PASSWORD(str)

Создает строку "пароля" из простого текста в аргументе str. Именно эта функция используется в целях шифрования паролей MySQL для хранения в столбце Password в таблице привилегий user:

mysql> SELECT PASSWORD('badpwd'); -> '7f84554057dd964b'

Шифрование, которое выполняет функция PASSWORD(), необратимо.

LAST_INSERT_ID([expr])

Возвращает последнюю автоматически сгенерированную величину, которая была внесена в столбец AUTO_INCREMENT

 

Функции, используемые в операторах GROUP BY

 

COUNT(expr)

Возвращает количество величин со значением, не равным NULL, в строках, полученных при помощи команды SELECT:

mysql> SELECT student.student_name,COUNT(*) FROM student,course WHERE student.student_id=course.student_id GROUP BY student_name;

Функция COUNT(*) несколько отличается от описанной выше: она возвращает количество извлеченных строк, содержащих величины со значением NULL. COUNT(*) оптимизирована для очень быстрого возврата результата при условии, что команда SELECT извлекает данные из одной таблицы, никакие другие столбцы не обрабатываются и функция не содержит выражения WHERE. Например:

mysql> SELECT COUNT(*) FROM student;

COUNT(DISTINCT expr,[expr...])

Возвращает количество различающихся величин со значением, не равным NULL:

mysql> SELECT COUNT(DISTINCT results) FROM student;

В MySQL для того, чтобы получить количество различающихся комбинаций выражений, не содержащих NULL, нужно просто задать список этих выражений. В ANSI SQL необходимо провести конкатенацию всех выражений внутри CODE(DISTINCT ...).

AVG(expr)

Возвращает среднее значение аргумента expr:

mysql> SELECT student_name, AVG(test_score) FROM student GROUP BY student_name;

MIN(expr)

MAX(expr)

Возвращает минимальную или максимальную величину аргумента expr. Функции MIN() и MAX() могут принимать строковый аргумент; в таких случаях они возвращают минимальную или максимальную строковую величину.

mysql> SELECT student_name, MIN(test_score), MAX(test_score) FROM student GROUP BY student_name;

SUM(expr)

Возвращает сумму величин в аргументе expr. STD(expr)

STDDEV(expr)

Возвращает среднеквадратичное отклонение значения в аргументе expr