сумма и разность из двух sql таблиц по пункту - laravel - PullRequest
0 голосов
/ 05 февраля 2020

Я пытаюсь получить результат суммы двух разных таблиц и найти разницу этой таблицы: вот моя таблица

Таблица заказов

enter image description here

Таблица кораблей

enter image description here

Таблица и запрос enter image description here

Мне нужно получить результат запроса в соответствии с элементом, если количество отсутствует, тогда ZERO При использовании ISNULL выбрасываются все значения, а не результат IFNULL. код или SQL Запрос, который я использовал.

    select orders.item,
           SUM(orders.quantity) as aQuantity,
           SUM(ship.quantity) AS oQuantity,
           SUM(orders.quantity) - SUM(ship.quantity) AS diffrence
    FROM orders,
         ship
    GROUP BY orders.item

требуется Выход enter image description here

1 Ответ

1 голос
/ 05 февраля 2020

Попробуйте:

select a.item,IFNULL(o_quant,0) as "o_quant",IFNULL(s_quant,0) as "s_quant",(IFNULL(sum(o_quant),0) - IFNULL(sum(s_quant),0)) as "difference" from (select o.item,sum(o.quantity) "o_quant"
from orders o group by o.item) a left join (select s.item,sum(s.quantity) "s_quant"
from ships s group by s.item) b on a.item = b.item group by a.item,o_quant,s_quant;

enter image description here

...