Подсчет в связанных БД - MySQL

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

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

Имеются 2 таблицы. Нужно посчитать кол-во книг написанное мужчинами и женщинами соотвественно.

Решение задачи: «Подсчет в связанных БД»

textual
Листинг программы
SELECT 
  SUM(summ), 
  SUM(sumf) 
FROM (
  SELECT 
    CASE a.sex WHEN 'm' THEN 1 ELSE 0 END AS summ,
    CASE a.sex WHEN 'f' THEN 1 ELSE 0 END AS sumf
  FROM avt a
  JOIN book b 
    ON b.a_id = a.a_id
) t;

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

  1. В данном коде используется язык SQL для выполнения запроса к базе данных.
  2. Запрос состоит из двух частей: внешнего и внутреннего запроса.
  3. Внешний запрос SELECT используется для выбора суммы значений из таблицы.
  4. Внутренний запрос (подзапрос) используется для создания временной таблицы с двумя столбцами: summ и sumf.
  5. В подзапросе используется оператор CASE для создания условий, при которых значения столбцов summ и sumf будут равны 1 или 0.
  6. Внутренний запрос соединяется с таблицей avt по столбцу a_id с помощью оператора JOIN.
  7. В результате внутреннего запроса создается временная таблица с двумя столбцами: summ и sumf, содержащими суммы значений из таблицы avt для мужчин и женщин соответственно.
  8. Внешний запрос SELECT используется для выбора суммы значений из временной таблицы.
  9. Результатом выполнения запроса будет две суммы: общая сумма значений summ и общая сумма значений sumf.

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


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

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

13   голосов , оценка 3.692 из 5