Использование нескольких вложенных запросов для вычисления суммы сумм? - PullRequest
0 голосов
/ 22 апреля 2020

schema

Это изображение выше определило схему для моих данных. Запрос, который мне нужно вычислить, требует, чтобы я получил client_id вместе с суммой суммы в транзакциях, заказах и ссудах для каждого клиента. У меня есть общее представление о том, что я хочу сделать, но мне трудно найти запрос, который работает. Я попытался объединить все таблицы вместе, но в итоге у меня были дублирующиеся данные, которые не соответствовали общему количеству. Кто-то сказал мне, что я должен использовать 3 подзапроса, а затем извлечь суммы, но я не совсем уверен, как использовать 3 подзапроса для решения этой проблемы.

Я также пробовал этот подзапрос, но он оказался неудачным

    FROM trans t 
        RIGHT JOIN disp d 
            ON d.account_id = t.account_id 
        JOIN client c 
            ON d.client_id = c.client_id, 
    order o 
        RIGHT JOIN disp di 
            ON di.account_id = o.account_id 
        JOIN client cl 
            ON di.client_id = cl.client_id, 
    loan l 
        RIGHT JOIN disp dis 
            ON dis.account_id = l.account_id 
        JOIN client cli 
            ON dis.client_id = cli.client_id 
    WHERE c.client_id = cl.client_id AND c.client_id = cli.client_id 
    GROUP BY c.client_id

Пример ожидаемого результата должен выглядеть следующим образом

|-------------------|------------------------------------------------------------------|
|client_id (UNIQUE) | total (SUM(order.amount) + SUM(loan.amount) + SUM(trans.amount)) |
|         1         |                25000                                             |
|         2         |                105000                                            |
|         5         |                50000                                             |
|-------------------|------------------------------------------------------------------|
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...