У меня есть таблица ниже:
SELECT * FROM reports;
# id, date, o_type, quantity, vendor
'1', '2020-04-05', '2511', '200', 'apple'
'2', '2020-04-05', '5120', '350', 'apple'
'3', '2020-04-05', '2520', '150', 'apple'
'4', '2020-04-05', '5114', '400', 'apple'
'5', '2020-04-05', 'HG851', '200', 'google'
'6', '2020-04-05', 'HG851A', '400', 'google'
'7', '2020-04-05', 'MA5620G', '9000', 'google'
'8', '2020-04-05', 'OT550', '7000', 'google'
'9', '2020-04-05', 'OT925', '2000', 'google'
'10', '2020-04-05', 'OT928', '2000', 'google'
'11', '2020-04-06', '2520', '150', 'apple'
'12', '2020-04-06', 'HG851', '200', 'google'
'13', '2020-04-06', 'HG851', '200', 'google'
'14', '2020-04-06', 'HG851A', '400', 'google'
'15', '2020-04-07', '2511', '200', 'apple'
'16', '2020-04-07', '5120', '350', 'apple'
'17', '2020-04-07', '2520', '150', 'apple'
'18', '2020-04-07', '5114', '400', 'apple'
'19', '2020-04-07', 'G-440G-A', '200', 'NOKIA'
'20', '2020-04-07', '1240GA', '400', 'NOKIA'
'21', '2020-04-07', '1440GP', '9000', 'NOKIA'
'22', '2020-04-07', 'B-0404G-B', '7000', 'NOKIA'
'23', '2020-04-07', 'B2404GP', '2000', 'NOKIA'
'24', '2020-04-07', 'G-881G-A', '2000', 'NOKIA'
'25', '2020-04-08', 'G-881G-B', '150', 'NOKIA'
'26', '2020-04-08', 'HG851', '200', 'google'
'27', '2020-04-08', 'HG851A', '400', 'google'
У меня ниже запрос в соответствии с требованиями моего проекта:
SELECT Date(a.date), a.vendor, a.o_type, a.quantity, b.total FROM reports a
INNER JOIN (
SELECT vendor, date, SUM(quantity) as total
FROM reports WHERE date >= '2020-04-06' AND date <= '2020-04-08'
GROUP BY vendor, date) b ON a.date = b.date AND a.vendor = b.vendor
# Date(a.date), vendor, o_type, quantity, total
'2020-04-06', 'apple', '2520', '150', '150'
'2020-04-06', 'google', 'HG851', '200', '800'
'2020-04-06', 'google', 'HG851', '200', '800'
'2020-04-06', 'google', 'HG851A', '400', '800'
'2020-04-07', 'apple', '2511', '200', '1100'
'2020-04-07', 'apple', '5120', '350', '1100'
'2020-04-07', 'apple', '2520', '150', '1100'
'2020-04-07', 'apple', '5114', '400', '1100'
'2020-04-07', 'NOKIA', 'G-440G-A', '200', '20600'
'2020-04-07', 'NOKIA', '1240GA', '400', '20600'
'2020-04-07', 'NOKIA', '1440GP', '9000', '20600'
'2020-04-07', 'NOKIA', 'B-0404G-B', '7000', '20600'
'2020-04-07', 'NOKIA', 'B2404GP', '2000', '20600'
'2020-04-07', 'NOKIA', 'G-881G-A', '2000', '20600'
'2020-04-08', 'NOKIA', 'G-881G-B', '150', '150'
'2020-04-08', 'google', 'HG851', '200', '600'
'2020-04-08', 'google', 'HG851A', '400', '600'
Я должен добавить дополнительный столбец РАЗНИЦА к вышеуказанному ВНУТРЕННЕМУ JOIN запрос. Как рассчитать разницу между текущей датой и итоговой датой в столбце поставщика.
Example1:
2020-04-06 ---> apple ---> total(150)
2020-04-07 ---> apple ---> total(1100) Here difference equals to -950 (150-1100)
Example2:
2020-04-07 ---> apple ---> total(1100)
2020-04-08 ---> apple ---> total(0) Here difference equals to -1100 (0-1100)
Example3:
2020-04-07 ---> NOKIA ---> total(20600)
2020-04-08 ---> apple ---> total(150) Here difference equals to -20450 (150-20600)
Пожалуйста, объясните мне, как действовать дальше? или если какие-либо другие детали, необходимые с моей стороны, пожалуйста, дайте мне знать.