10 популярных функций в MYSQL, которые вам нужно знать
- 17 января 2023
Без лишних слов принесли вам некоторые популярные функции MySQL, без которых вы точно не обойдётесь в работе.
AVG
Возвращает среднее значение из ряда числовых значений в виде десятичной дроби.
Например, если столбец таблицы содержит значения 1, 2, 3 и 4, то функция AVG, применённая к этому столбцу, вернёт значение 2.5. Функция AVG игнорирует значения NULL, поэтому, если какое-либо из значений в наборе является NULL, оно не будет включено в расчёт. Синтаксис функции AVG следующий:
AVG(expression)
Где expression — это столбец или выражение, содержащее числовые значения, которые необходимо усреднить. Например, вы можете использовать следующий запрос для расчёта средней зарплаты всех сотрудников в таблице:
SELECT AVG(salary) FROM employees;
COUNT
Возвращает количество строк, которые соответствуют заданном условию. Результат —всегда целое число.
Например, если у вас есть таблица с 10 строками, то функция COUNT, примененная к этой таблице, вернёт значение 10. Функция COUNT тоже игнорирует значения NULL, поэтому если какая-либо из строк таблицы содержит значения NULL в подсчитываемых столбцах, они не будут включены в расчёт.
Синтаксис функции COUNT следующий:
COUNT(expression)
Где expression — столбец или выражение для подсчёта.
Вы также можете использовать условие, чтобы указать, какие строки должны быть подсчитаны. Например, так можно посчитать, сколько в компании сотрудников с зарплатой выше 50 000 ₽:
SELECT COUNT(*) FROM employees WHERE salary > 50000;
MAX и MIN
Возвращают максимальное и минимальное значение из набора числовых или строковых значений.
Из набора 1, 2, 3 и 4 функция MAX вернёт значение 4. Если столбец содержит строковые значения яблоко, банан и вишня, функция MAX вернёт значение яблоко. Функция MAX, как и предыдущие, игнорирует значения NULL, поэтому если какое-либо из значений в наборе является NULL, оно не будет включено в расчёт. Синтаксис функции MAX следующий:
MAX(expression)
Где expression — столбец или выражение, содержащее сравниваемые значения. Например, вы можете использовать следующий запрос, чтобы найти самую высокую зарплату всех сотрудников в таблице:
SELECT MAX(salary) FROM employees;
Функция MIN устроена аналогичным образом, только возвращает минимальное значение.
SUM
Возвращает сумму набора числовых значений в виде десятичного числа.
Например, для набора 1, 2, 3 и 4 функция SUM вернёт значение 10. Функция SUM игнорирует значения NULL, поэтому если какое-либо из значений в наборе является NULL, оно не будет включено в расчёт.
Синтаксис функции SUM следующий:
SUM(expression)
Где expression — столбец или выражение, содержащее числа, которые необходимо суммировать. Например, вы можете использовать следующий запрос для вычисления общей зарплаты всех сотрудников в таблице:
SELECT SUM(salary) FROM employees;
NOW
Возвращает текущую дату и время.
Функция NOW часто используется в комбинации с другими функциями или в условиях запроса. Например, её можно использовать для вставки текущей даты и времени в таблицу или для сравнения текущей даты и времени с временной меткой, хранящейся в таблице.
Синтаксис функции NOW очень простой — функция не принимает никаких аргументов.
NOW()
Например, вы можете использовать следующий запрос для вставки текущей даты и времени в столбец timestamp таблицы table:
INSERT INTO table (timestamp) VALUES (NOW());
SUBSTRING
Возвращает часть строки, начинающуюся с указанной позиции и имеющую заданную длину.
Она возвращает извлеченную часть строки в виде новой строки. Например, если у вас есть строка Hello, world! и вы используете функцию SUBSTRING для извлечения пяти символов, начиная с седьмого, то функция вернёт строку world.
Синтаксис функции SUBSTRING следующий:
SUBSTRING(string, start, length)
Где string — входная строка, start — позиция, с которой начинается извлечение, а length — количество символов для извлечения. Если аргумент length опущен, функция извлечет все символы от позиции start до конца строки.
Например, вы можете использовать следующий запрос для извлечения первых пяти символов строки:
SELECT SUBSTRING('Hello, world!', 1, 5);
В результате будет возвращена строка Hello.
UCASE и LCASE
Функции UCASE и LCASE в MySQL используются для преобразования строки в верхний или нижний регистр, соответственно.
Эти функции часто используются при сравнении строк, которые могли быть введены в разном регистре, или при хранении строк в едином регистре для облегчения поиска и сортировки. Функция UCASE переводит все буквы во входной строке в верхний регистр, а функция LCASE переводит все буквы в нижний регистр. Синтаксис этих функций следующий:
UCASE(string)
LCASE(string)
Где string — это входная строка, которую нужно преобразовать. Например, вы можете использовать следующий запрос для преобразования строки в верхний регистр:
SELECT UCASE('Hello, world!');
Это вернёт строку HELLO, WORLD! со всеми буквами в верхнем регистре. Аналогично, следующий запрос вернёт строку hello, world! со всеми буквами в нижнем регистре.
SELECT LCASE('Hello, world!');
CONCAT
Соединяет две или более строк в одну.
Она возвращает склеенную строку как новую строку. Например, если у вас есть строки Hello и world с пробелом в начале строки, и вы используете функцию CONCAT для их объединения, функция вернёт строку Hello world.
SELECT CONCAT('Hello', ' world');
Синтаксис функции CONCAT следующий:
CONCAT(string1, string2, ...)
Где string1, string2 и так далее — строки, которые вы хотите склеить. Функция CONCAT может принимать любое количество аргументов, и все строки будут склеены в том порядке, в котором указаны.
Соединить строки с разделителем
Вы также можете использовать функцию CONCAT_WS, которая означает «конкатенировать с разделителем». Например, можно использовать следующий запрос для конкатенации двух строк с пробелом в качестве разделителя:
SELECT CONCAT_WS(' ', 'Hello', 'world');
Это также вернёт строку Hello world, но использование функции CONCAT_WS позволяет указать используемый разделитель.
Это лишь некоторые примеры из множества встроенных функций, доступных в MySQL. Существует множество других, каждая из которых имеет свое специфическое назначение и случаи использования.
Больше статей
Эту статью нам помогли сделать нейросети. Если вы нашли в ней фактические ошибки — напишите на blog+neural@htmalcademy.ru.
«Доктайп» — журнал о фронтенде. Читайте, слушайте и учитесь с нами.