Witam!
Próbuję wymyślić możliwie najprostsze zapytanie, które zrealizuje taką funkcję na takich danych:
Chcę podsumować wszystkie koszty wysyłki gdzie data wysłania miesci się od dnia xx-xx-xxxx do dnia yy-yy-yyyy na produkty z tabeli zamówienia.
Struktura bazy danych wygląda następująco:
Tabela zamówienia (pogląd):
id | data wysłania | waga wysłania do x kg
Tabela schematy cen
id | data obowiązywania od | data obowiązywania do
tabela ceny
id schematu cen | waga wysłania do x kg | cena
Schematy cenowe są modyfikowane w zależności od cen np Poczty Polskiej, powiedzmy od dnia x do y są takie ceny, a od dnia y+1 do z są inne ceny. Chcę wybrać zsumowane koszty, ale musi się to odbyć w taki sposób, że cena wysłania danego zamówienia jest wyznaczana na podstawie tego, w jakim przedziale schematów cenowych znajduje się data wysłania. Mi się nasuwają dwa podjeścia do tego problemu, jeden: wybrać wszystkie zamówienia, ich daty wysłania i dla każdego zamówienia wybrać schemat cenowy i policzyć cenę, lub wybrać schematy, które zawierają się w okresie xx-xx-xxxx - yy-yy-yyyy, wybrać wszystkie zamówienia w tych schematach i dla nich liczyć sumę. Jest jakieś prostsze podejście do tego problemu?
Pozdrawiam