У меня есть 2 стола Products
и Invoices
. Каждый Products
может быть в некотором Invoices
.Группа в Sqlite?
Product:
Id| Name
ـــــــــــــــ
1 | pencil
2 | pen
3 | ruler
Invoice:
Id| ProductID| Serial |Qty
ـــــــــــــــــــــــــــــ
1 | 1 |100 |5
2 | 1 |200 |6
3 | 2 |300 |8
4 | 3 |400 |18
Когда я пишу следующий запрос
select * , SUM(Invoices.Qty)
FROM Products left outer join Invoices on Products.Id = Invoices.ProductID
Group by Products.Id
результат:
Id| Name |Id|ProductID| Serial|SUM(Invoices.Qty)
ـــــــــــــــــــــــــــــــــــــــــــــــــــــ
1 |pencil |2 |1 |200 |11 -> (5+6)
2 |pen |3 |2 |300 |8
3 |ruler |4 |3 |400 |18
он возвращает список всех продуктов, которые присоединились к последних счетом-фактурами. Он правильно вычисляет Qty
, но проблема заключается в выборе последнего счета-фактуры. Как я могу написать запрос, который правильно вычисляет Qty
и возвращает Invoices
с id
, который я хочу.
в этом примере я хочу накладная идентификатор 1 (серийный 100) не 2 (серийный 200)
Какой идентификатор вы хотите? –
Можете ли вы показать структуру обеих таблиц и какой результат вы хотите? –
@GordonLinoff, например, если у нас есть 2 счета-фактуры с идентификаторами 10 и 11, он возвращает это последнее (счет-фактура с идентификатором 11). Но я хочу, чтобы Счет с id 10 – breceivemail