tabele su slijedeće
narudzbeGodisnje
( sifGodNarudzbe,
kupac ,
godina)
tjedneNarudzbe
( sifTjedneNarudzbe,
sifTjedan,
rokIsporuke,
sifGodNarudzbe)
stavkeTjedneNarudzbe
( brStavke,
tjednaNarudzba,
sifProizvod,
komada)
isporuke
(
rbrIsporuke,
datumIsporuke,
sifTjedneNarudzbe)
stavkeIsporuke
( brStavkeIsporuke,
rbrIsporuke,
sifProizvod,
komada)
Isporuke su vezane uz tjedne narudzbe. Za svaku tjednu narudzbu moze biti vise isporuka
Upitom zelim dobiti za svaku godinu koliko je komada odredjenog proizvoda naručeno, koliko je isporučeno, i izračunati koliko je preostalo za isporučiti.
To pokušavam slijedećim upitom:
select
narudzbeGodisnje.godina,narudzbeGodisnje.kupac,
stavkeTjedneNarudzbe.sifProizvod as ProizvodNaruceni,
sum(stavkeTjedneNarudzbe.komada) as Narucenih,
sum(stavkeIsporuke.komada) as Isporuceno,
(sum(stavkeTjedneNarudzbe.komada)-sum(stavkeIsporuke.komada)) as Preostalo
from
narudzbeGodisnje,
tjedneNarudzbe,
stavkeTjedneNarudzbe,
isporuke,
stavkeIsporuke
where
stavkeTjedneNarudzbe.sifProizvod= stavkeIsporuke.sifProizvod and
tjedneNarudzbe.sifGodNarudzbe = narudzbeGodisnje.sifGodNarudzbe and
stavkeTjedneNarudzbe.tjednaNarudzba = tjedneNarudzbe.sifTjedneNarudzbe and
isporuke.sifTjedneNarudzbe = tjedneNarudzbe.sifTjedneNarudzbe and
stavkeIsporuke.rbrIsporuke = isporuke.rbrIsporuke
group by
stavkeTjedneNarudzbe.sifProizvod,
narudzbeGodisnje.godina,
narudzbeGodisnje.kupac
koji mi vraća rezultat:
Code:
godina kupac ProizvodNaruceni Narucenih Isporuceno Preostalo
------ -------------------------------------------------- -------------------- ----------- ----------- -----------
2007 1 22 2000 800 1200
2007 1 34 2000 400 1600
2008 1 22 1000 300 700
2008 1 34 1200 340 860
godina kupac ProizvodNaruceni Narucenih Isporuceno Preostalo
------ -------------------------------------------------- -------------------- ----------- ----------- -----------
2007 1 22 2000 800 1200
2007 1 34 2000 400 1600
2008 1 22 1000 300 700
2008 1 34 1200 340 860
koji je pogrešan u tome što upit stvarni broj naručenih komada nekog proizvoda pomnozi sa brojem isporuka u kojima je proizvod bio zastupljen u toj godini.
Gdje grijesim i kako da to izbjegnem.