Как сделать столбец, который будет хранить сумму всех связанных записей из другой таблицы в MySQL - PullRequest
0 голосов
/ 15 сентября 2018

У меня есть две таблицы

эпизодов

name          views       fk
    ----          -----       ---
    ep 1           234         1----|
                                    + -> 234 + 213
    ep 2           213         1----|


    ep 3           634         2----|
                                    + -> 634 + 295
    ep 4           295         2----|

серии

id     name          views
==     ----          -----
1      s 1           sum_of_all_related_views_fields (234+213)
2      s 2           (634+295)

существует связь междуid -> FK == 1 ко многим

Я хочу иметь столбец e, как в приведенном выше столбце представления, что мне делать?все, о чем я могу думать, это представления и триггеры

1 Ответ

0 голосов
/ 15 сентября 2018

Вы можете присоединиться к таблице series в агрегированном запросе из таблицы episodes:

SELECT s.*, e.views
FROM   series s
JOIN   (SELECT   fk, SUM(views) AS views
        FROM     episodes
        GROUP BY fk) e on e.fk = s.id
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...