SQLITE: получение разницы из двух разных значений столбца

#sqlite #sum

#sqlite #сумма

Вопрос:

У меня есть 2 названия таблиц..InvoiceGarmentService и Payment..

 InvoiceGarmentService Table Data
----------------------------------
IGSID     InvoiceID   Price

0           1001      50

1           1001      100

2           1002      500

3           1002      600

------------------------------------
Payment Data
------------------------------------
PaymentID InvoiceID Amount

0          1001      20

1          1002      300

2          1003      900

------------------------------------
  

Я хочу получить причитающуюся сумму, т.Е.. (Sum of Price From IGS)-(Sum of Amount from Payment)
Я использовал запрос, подобный этому

 SELECT sum(Price) FROM InvoiceGarmentService - sum(Amount)FROM Payment 
WHERE InvoiceGarmentService.InvoiceID='1001'
  

Но я не могу найти результат .. говорю, что здесь синтаксическая ошибка, но я не знаю об этом..
Кто-нибудь может мне помочь

Комментарии:

1. Видя ваш запрос, я бы посоветовал вам сначала прочитать «основы sql»…

Ответ №1:

 SELECT igs.InvoiceID, (val1 - val2)
  FROM (SELECT InvoiceID, sum(Price) AS val1
          FROM InvoiceGarmentService
         GROUP BY InvoiceID) igs
  JOIN (SELECT InvoiceID, sum(Amount) AS val2
          FROM Payment
         GROUP BY InvoiceID) p
    ON (igs.InvoiceID = p.InvoiceID)
 WHERE igs.InvoiceID = '1001'