Без лишних слов принесли вам некоторые популярные функции 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.


«Доктайп» — журнал о фронтенде. Читайте, слушайте и учитесь с нами.

ТелеграмПодкастБесплатные учебники

Читать дальше

Как работает протокол HTTP

Как работает протокол HTTP

HTTP был разработан в 1990-х годах для создания первого интерактивного текстового веб-браузера. За эти годы протокол менялся и совершенствовался, становился более гибким и постепенно превратился в современный интернет. В статье рассмотрим принцип работы протокола и что важно знать о нём разработчику.

Читать дальше
  • 8 февраля 2023
Массивы в PHP

Массивы в PHP

Массив — это ещё один тип данных, вроде числа или строки. Главное отличие массива от остальных типов данных заключается в его способности хранить в переменной больше одного значения. В предыдущих примерах имя переменной всегда ассоциировалось только с одним значением:

  • $name = "Иннокентий"
  • $age = 42

А если мы хотим узнать не только пол, имя и возраст пользователя, но и, допустим, любимые сериалы? Очень непросто назвать один самый любимый сериал, а вот вспомнить несколько — намного легче. Сохранение в переменную-массив нескольких значений выглядит так:

 $fav_shows = ["game of thrones", "american horror story", "walking dead"];

В этом примере мы сохранили в переменной $fav_shows сразу три значения. Но сохранить эти данные — это только половина дела. Как с ними потом работать? Уже знакомый вам способ вывода переменной на экран не будет работать с массивами:

<?php
print("Мои любимые сериалы: " . $fav_shows);

Так увидеть список любимых сериалов не получится. Дело в том, что массив — это не обычная переменная. Массив хранит не простые типы, вроде текста или чисел (их ещё называют «скалярными типами»), а более сложную структуру данных, поэтому здесь нужен особый подход.

Внутри массива у каждого значения есть адрес, по которому к нему можно обратиться. Такой адрес называется индексом. Индекс — это просто порядковый номер значения внутри массива. Индексация начинается с нуля, так что первый элемент получает индекс — 0, второй — 1, и так далее.

Чтобы получить определенный элемент массива, необходимо знать его индекс (ключ). Напечатаем названия всех сериалов из массива через запятую:

<?php
print("Мои любимые сериалы: " . $fav_shows[0] . ", " . $fav_shows[1] . ", " . $fav_shows[2]);?>

Теперь можно дать определение массива: Массив — это совокупность множества элементов вида «ключ: значение».

Массивы позволяют перезаписывать существующие значения и добавлять новые. Добавить новое значение в массив можно так:

$fav_shows[] = "the big bang theory";

Новый элемент автоматически получит индекс равный максимальному индексу из существующих + 1. «Теория большого взрыва» сохранится в массиве под индексом 3.

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

$fav_shows[4] = "fargo";

Для полного удаления (без замены на другое) значения по его индексу существует функция unset:

unset($fav_shows[4]);
Читать дальше
  • 10 ноября 2022
Синтаксис PHP

Синтаксис PHP

Разберёмся, из чего состоит любой язык программирования.

У каждого языка есть правила и конструкции, следуя которым мы выражаем мысли и делаем их понятными для другого человека. В программировании всё точно так же. Но вместо человеческого языка мы используем язык программирования PHP, а в роли нашего собеседника выступает PHP-интерпретатор. Поэтому, чтобы выразить свою мысль, мы должны сделать её понятной для интерпретатора.

Читать дальше
  • 27 октября 2022
Массивы $_POST и $_GET в PHP. Обработка форм

Массивы $_POST и $_GET в PHP. Обработка форм

Формы — это часть языка HTML. Формы нужны для передачи данных от клиента на сервер. Чаще всего формы используются для регистрации пользователей, заполнения анкет, оформления заказа в интернет магазине, и так далее.

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

Большую часть времени программирования на PHP вы будете так или иначе работать с формами и данными из них.

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

PHP содержит множество средств для работы с формами. Это позволяет очень просто решать типичные задачи, которые часто возникают в веб-программировании:

  • Регистрация и аутентификация пользователя;
  • Отправка комментариев на форумах и социальных сетях;
  • Оформление заказов.

Практически любой современный сайт содержит как минимум несколько разных HTML-форм.

Читать дальше
  • 20 октября 2022
Учебник по PHP

Учебник по PHP

  1. Знакомство с языком
  2. Шаблонизация и подключение файлов
  3. Протокол HTTP и формы
  4. Идентификация пользователя на сайте
  5. Базы данных
  6. Объекты и использование библиотек
  • 10 сентября 2022
Протокол HTTP и работа с заголовками

Протокол HTTP и работа с заголовками

Весь современный веб построен на модели взаимодействия клиента и сервера. Как она работает:

  • браузер пользователя (клиент) отправляет на сервер запрос с адресом сайта (URL);
  • сервер получает запрос и отдаёт клиенту запрошенный контент.

Для реализации процесса используется универсальный протокол HTTP.

Читать дальше
  • 10 сентября 2022
Защита от SQL-инъекций

Защита от SQL-инъекций

Внедрение SQL-кода (SQL инъекция) — один из распространённых способов взлома сайтов, работающих с базами данных. Способ основан на внедрении в запрос произвольного SQL-кода. Внедрение SQL позволяет хакеру выполнить произвольный запрос к базе данных (прочитать содержимое любых таблиц, удалить, изменить или добавить данные).

Атака этого типа возможна, когда недостаточно фильтруются входные данные при использовании в SQL-запросах.

Читать дальше
  • 10 сентября 2022
Объекты и классы в PHP

Объекты и классы в PHP

Объекты в PHP — это просто ещё один тип данных. Объект позволяет хранить в переменной набор из свойств и их значений, а также встроенные функции. Это делает объекты похожими по своей структуре на ассоциативные массивы. Но отличие от массивов всё-таки есть, и при этом достаточно важное — объекты могут иметь внутреннее состояние.

Читать дальше
  • 10 сентября 2022
Циклы в PHP. Краткое руководство

Циклы в PHP. Краткое руководство

Цикл — это конструкция языка, которая выполняет блок кода больше одного раза.

Мы привыкли, что сценарии выполняются линейно: сверху вниз, строчка за строчкой. Но что делать, если надо повторить какую-нибудь инструкцию несколько раз? Например, как вывести на экран натуральные числа от 1 до 9?

Есть очевидный способ:

<?php
print(1);
print(2);
print(3);
// и так далее...

Но он заставляет писать много кода. И что если требуется вывести последовательность из миллиона чисел? Ещё бывают ситуации, когда заранее неизвестно сколько раз нужно выполнить определённую инструкцию.

Использование циклов значительно упрощает и укорачивает код. Циклы незаменимы в ситуациях, когда заранее неизвестно сколько раз должен выполниться блок кода. Такое число зависит от множества условий и вычисляется в момент выполнения сценария.

Так выглядит цикл в PHP:

<?php
while (<условие цикла>) {
<тело цикла>
}
Читать дальше
  • 10 сентября 2022