Суммирование с разбивкой по разным столбцам - MySQL

Узнай цену своей работы

Формулировка задачи:

Подскажите, как подсчитать суммы по полю

Qty

по месяцам с разбивкой по разным столбцам в зависимсти от значения в поле

Product

? Исходная таблица:
Month Product Qty
Ожидаемый результат:
Month Sum_PC Sum_phone Sum_tablet

Решение задачи: «Суммирование с разбивкой по разным столбцам»

textual
Листинг программы
select
  m, -- (m) - месяц
  sum(
    case when p = 'pc' then q else 0 end -- (p) -продукт, (q) - qty
  ) PC_q,
  sum(
    case when p = 'phone' then q else 0 end
  ) phone_q,
  sum(
    case when p = 'tablet' then q else 0 end
  ) tablet_q
from t
group by m;

Объяснение кода листинга программы

В данном коде выполняется запрос на языке SQL к таблице t с целью суммирования значений столбца q для разных продуктов (pc, phone, tablet) в разрезе месяцев (столбец m). Вот список действий, которые выполняются в данном коде:

  1. Указание столбца m для группировки данных по месяцам.
  2. Использование функции SUM() для подсчета суммы значений столбца q для каждого месяца.
  3. Использование оператора CASE WHEN внутри функции SUM() для условного подсчета значений столбца q в зависимости от значения столбца p.
  4. Сортировка результатов запроса по столбцу m с помощью ключевого слова GROUP BY.
  5. Вывод результатов запроса на экран.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

13   голосов , оценка 3.846 из 5
Похожие ответы