17 lines
514 B
SQL
17 lines
514 B
SQL
-- Calculamos todos los volumenes de todos los tickets una sola vez
|
|
CREATE OR REPLACE TEMPORARY TABLE tmp.tTicketVolume
|
|
(PRIMARY KEY (id))
|
|
ENGINE = MEMORY
|
|
SELECT t.id, SUM(s.quantity * ic.cm3delivery / 1000000) volume
|
|
FROM vn.sale s
|
|
JOIN vn.ticket t ON t.id = s.ticketFk
|
|
JOIN vn.itemCost ic ON ic.itemFk = s.itemFk
|
|
AND ic.warehouseFk = t.warehouseFk
|
|
GROUP BY t.id;
|
|
|
|
UPDATE vn.ticket t
|
|
JOIN tmp.tTicketVolume tv ON tv.id = t.id
|
|
SET t.volume = tv.volume;
|
|
|
|
DROP TEMPORARY TABLE tmp.tTicketVolume;
|