Спринт 13/24 → Тема 3/9: Агрегирующие функции. Группировка и сортировка данных → Урок 1/11

Кратко:
  • Математические операции в SQL используются для анализа данных.
  • Стандартные операторы: +, -, *, /, которые позволяют складывать, вычитать, умножать и делить данные.
  • Дополнительные функции для работы с числами: ABS, CEILING, FLOOR, ROUND, POWER, SQRT.
  • Функции ABS, CEILING, FLOOR округляют числа до целого в меньшую или большую сторону.
  • ROUND округляет число до ближайшего числа или до определенного количества знаков после запятой.
  • POWER возвращает число, возведенное в степень.
  • SQRT извлекает квадратный корень из числа.
  • Математические функции можно комбинировать для получения более сложных выражений.

Спринт 13/24 → Тема 3/9: Агрегирующие функции. Группировка и сортировка данных → Урок 2/11

Кратко:
  • Агрегирующие функции в SQL используются для вычисления на наборе значений и возврата одного значения.
  • Основные агрегирующие функции: SUM(поле) - сумма значений в поле; AVG(поле) - среднее арифметическое значений в поле; MIN(поле) - минимальное значение в поле; MAX(поле) - максимальное значение в поле; COUNT(*) - количество записей в таблице; COUNT(поле) - количество записей в поле.
  • Агрегирующие функции можно сочетать с математическими операторами, например, ROUND(AVG(total), 2) - округление средней суммы заказа до двух чисел после запятой.
  • Функция COUNT может быть использована для всей таблицы или для отдельного поля, например, SELECT COUNT(*) FROM invoice; | count | | 412.
  • Ключевые слова DISTINCT и агрегирующие функции могут быть использованы вместе для подсчета уникальных значений, например, SELECT DISTINCT billing_country, COUNT(total) FROM invoice.
  • Для решения задач, где DISTINCT и агрегирующие функции нельзя использовать вместе, используются другие инструменты, такие как R или Python.

Спринт 13/24 → Тема 3/9: Агрегирующие функции. Группировка и сортировка данных → Урок 3/11

Кратко:
  • Агрегирующие функции в SQL выполняют вычисления на наборе значений и возвращают одно значение.
  • Основные агрегирующие функции: SUM(поле), AVG(поле), MIN(поле), MAX(поле), COUNT(поле).
  • Агрегирующие функции применяются после оператора SELECT.
  • Ключевое слово DISTINCT помогает отобрать уникальные значения.
  • Агрегирующие функции можно сочетать с математическими функциями.

B_SQL. Задача 1

B_SQL. Задача 2

B_SQL. Задача 3

B_SQL. Задача 4

B_SQL. Задача 5

B_SQL. Задача 6

Спринт 13/24 → Тема 3/9: Агрегирующие функции. Группировка и сортировка данных → Урок 4/11

Кратко:
  • Агрегирующие функции используются для вычисления средних значений, сумм и других статистических показателей.
  • Оператор GROUP BY используется для разделения данных на группы по значениям полей.
  • Группировка данных позволяет получить средние значения для каждого города с помощью одного запроса.
  • Оператор GROUP BY всегда располагается после WHERE или после FROM, если WHERE отсутствует.
  • Пример использования GROUP BY: SELECT billing_city, ROUND(AVG(total)) FROM invoice GROUP BY billing_city LIMIT 5.

Спринт 13/24 → Тема 3/9: Агрегирующие функции. Группировка и сортировка данных → Урок 5/11

Кратко:
  • Группировка данных в SQL осуществляется с помощью оператора GROUP BY.
  • Группировка помогает анализировать данные и сравнивать значения в разных группах.
  • Оператор GROUP BY указывается после WHERE или после FROM.
  • При группировке данных необходимо указать поля и необходимые вычисления.
  • Не забудьте вывести поле, по которому группируете данные, иначе таблица будет неинформативной.

B_SQL. Задача 1

B_SQL. Задача 2

B_SQL. Задача 3

B_SQL. Задача 4

B_SQL. Задача 5

B_SQL. Задача 6

Спринт 13/24 → Тема 3/9: Агрегирующие функции. Группировка и сортировка данных → Урок 6/11

Кратко:
  • Сортировка данных упрощает анализ и позволяет выгрузить "топовые" значения.
  • В SQL сортируют значения в полях с любым типом данных, включая числовой, дату и время, а также символьные данные.
  • Оператор ORDER BY используется для сортировки данных в SQL, его пишут в конце запроса после LIMIT.
  • Пример использования ORDER BY: SELECT billing_city, SUM(total), COUNT(total), AVG(total) FROM invoice WHERE billing_country = 'USA' GROUP BY billing_city ORDER BY AVG(total).
  • По умолчанию ORDER BY сортирует данные от меньшего к большему, ключевое слово DESC меняет порядок на убывание.
  • Можно составить топ-5 городов по значению средней выручки с помощью запроса SELECT billing_city, AVG(total) FROM invoice WHERE billing_country = 'USA' GROUP BY billing_city ORDER BY AVG(total) DESC LIMIT 5.

B_SQL. Задача 1

B_SQL. Задача 2

B_SQL. Задача 3

Спринт 13/24 → Тема 3/9: Агрегирующие функции. Группировка и сортировка данных → Урок 7/11

Кратко:
  • SQL позволяет группировать и сортировать данные по нескольким полям.
  • Группировка по двум полям может быть использована для сравнения количества заказов по дням и стране.
  • Поле invoice_date должно быть преобразовано в тип date для корректной сортировки.
  • Ключевое слово DISTINCT может быть использовано для получения уникальной выдачи без агрегирующей функции COUNT.
  • При сортировке по нескольким полям важен порядок полей после оператора ORDER BY.
  • Пример сортировки: страна заказа, идентификатор пользователя и сумма заказа будут отсортированы в определенной последовательности.
  • Порядок полей после SELECT влияет только на расположение полей в таблице, но не на иерархию сортировки.

Спринт 13/24 → Тема 3/9: Агрегирующие функции. Группировка и сортировка данных → Урок 8/11

Кратко:
  • Оператор HAVING используется для среза данных после группировки.
  • HAVING работает только после оператора GROUP BY.
  • Оператор HAVING отличается от оператора WHERE: HAVING используется для среза данных после группировки, а WHERE - для фильтрации данных перед группировкой.
  • Агрегирующие функции можно использовать только в условии оператора HAVING.
  • Пример использования оператора HAVING: SELECT customer_id, SUM(total) FROM invoice GROUP BY customer_id HAVING SUM(total) > 41 ORDER BY SUM(total) DESC.

Спринт 13/24 → Тема 3/9: Агрегирующие функции. Группировка и сортировка данных → Урок 9/11

Кратко:
  • Оператор HAVING используется для получения среза данных после группировки.
  • HAVING нельзя использовать без оператора GROUP BY.
  • HAVING не имеет смысла без агрегирующих функций.
  • Оператор HAVING всегда указывается после оператора GROUP BY.

B_SQL. Задача 1

B_SQL. Задача 2

B_SQL. Задача 3

Спринт 13/24 → Тема 3/9: Агрегирующие функции. Группировка и сортировка данных → Урок 10/11

Кратко:
  • Прохождение темы "Агрегирующие функции в SQL"
  • Изучение группировки данных в таблицах по одному и нескольким полям
  • Сортировка данных по одному и нескольким полям
  • Использование оператора HAVING для фильтрации строк после группировки

 

Спринт 13/24 → Тема 3/9: Агрегирующие функции. Группировка и сортировка данных → Урок 11/11

Проверочные задания.