Wpis z mikrobloga

Siema Mirasy,
potrzebuje jakiś pro tip z #sql a mianowicie mam do zrobienia raport taki jak na zdjęciu.
Mini opis: mamy z tabelek wyciągnięte produkty i one są z wyciągane na podstawie dwóch typów dokumentów (1- przychody , 2 - rozchody)
i w owym raporcie mamy dostać wszystkie produkty i ich stany dla każdej ceny ( tylko typ 1) a dokumenty z typu 2 maja odejmować z tego NAJSTARSZEGO (nawet gdy cena jest inna )

każde info które pomoże mi to ogarnąć będzie na wagę złota :D

troche: #programowanie #programista15k #bazydanych #dotnet #csharp
korkee - Siema Mirasy,
potrzebuje jakiś pro tip z #SQL a mianowicie mam do zrobienia...

źródło: comment_1587923342ZRBKPW0BGZPj5WVlyxLDWJ.jpg

Pobierz
  • 2
@korkee: spróbuj coś w stylu:

select t1.nazwa,sumprzyjeto - case when rank = 1 then sumwydano else 0 end as ilosc_sztuk, cena from (select nazwa, cena, sum(przyjeto) as sumprzyjeto, min(data) as mindata, dense_rank() over (order by min(data)) as rank
FROM [fun].[dbo].[cennik]
where typ_dok = 1
group by nazwa, cena ) as t1

join

(select nazwa, sum(wydano) as sumwydano
FROM [fun].[dbo].[cennik]
where typ_dok = 2
group by nazwa) as t2



on t1.nazwa =