Я пытаюсь заказать своих клиентов по сумме счетов и сумме значений счетов.Чтобы получить стоимость счета, мне нужно сложить элементы, которые могут (или не могут) быть в 2 таблицах: продукты и поддержка.Структура выглядит примерно так:

Я пробовал этот запрос, но он не работает:
SELECT
c.id,
c.name,
COUNT(i.id) as total_amount,
SUM(ip.value * ip.quantity) as total_products,
SUM(sp.value) as total_support
FROM InVoice i
INNER JOIN Costumer c ON i.id_costumer = c.id
LEFT JOIN InVoice_Product ip ON ip.id_invoice = i.id
LEFT JOIN InVoice_Support sp ON sp.id_invoice = i.id
GROUP BY c.id, c.name
ORDER BY total_amount, total_products DESC
Если яВыполнение запроса без LEFT JOINS, только поиск количества счетов, прекрасно работает .. Но когда я пытаюсь добавить JOINS, результаты не соответствуют действительности ..
Я застрял наthis.
РЕДАКТИРОВАТЬ:
Fiddle с ожидаемым результатом (общая сумма): http://sqlfiddle.com/#!9/f001a7/4
Fiddle с полным запросом: http://sqlfiddle.com/#!9/f001a7/5