Я делаю и приложение в vb.net с использованием Visual Studio 2005 и SQL Server 2000. Я должен отслеживать акции.Акция при добавлении имеет статус «Продано».При удалении некоторой акции транзакция сохраняет статус акции как «Продано».Статус также может быть «Истек» для акции, срок годности которой истек, и когда заявка истекла для компании, тогда статус «заявлен» ... Теперь из всего этого я хочу извлечь запас, который в данный момент находится в распоряжении.На базовом уровне с двумя значениями состояния, т.е. «Продано» и «Продано», я использую следующий запрос для извлечения результатов из базы данных, но он не рассчитывает разницу между проданными и непроданными товарами ...
select category, item_name,
sum(crtns_added) as Cartons, sum(pieces_added) as Pieces,
sum(total_price)
from Stock
where status = 'unsold'
group by category, item_name
Я тоже пробовал это
select category, item_name, (sum(crtns_added) - sum(crtns_removed)) as Cartons,
(sum(pieces_added)- sum(pieces_removed)) as Pieces,
sum(total_price)
from Stock
where status = 'unsold' or status = 'sold'
group by category, item_name