Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: zestawienie "pełnych" operacji z całego miesiąca
Forum PHP.pl > Forum > Bazy danych
TomASS
Cześć, mam taką strukturę bazy danych:

Cytat
ID | Ilosc | Data | Pełne {tak/nie}


są to tankowania pojazdów. Chciałbym zrobić ilość tankowań w miesiącu z założeniem, że ostatnie niepełne tankowania przechodzą na kolejny miesiąc.
Niestety po polu "ilość" nie jestem w stanie określić czy tankowanie jest od pełna czy nie. Określa to pole "pełne".
Założenie jest takie, że miesiąc musi się kończyć tankowaniem do pełna, jeśli kończy się tankowaniem nie do pełna (jednym lub kilkoma), to są one przenoszone na początek kolejnego miesiąca.

Czyli dla danych

Cytat
01| 100| 2011-06-01 | nie
02| 100| 2011-06-12 | tak
03| 100| 2011-06-23 | tak
04| 100| 2011-06-24 | tak
05| 100| 2011-06-30 | nie
06| 100| 2011-07-01 | tak
07| 100| 2011-07-05 | tak
08| 100| 2011-07-08 | nie
09| 100| 2011-07-21 | tak
11| 100| 2011-08-02 | tak
12| 100| 2011-08-18 | tak
13| 100| 2011-08-19 | tak
14| 100| 2011-08-20 | nie
15| 100| 2011-08-30 | nie

dla czerwca pokaże rekordy: (o ile wcześniej nie było pustego) 01;02;03;04
dla lipca pokaże rekordy: 05;06;07;08;09
dla sierpnia: 10;11;12;13
(14 oraz 15 rekord pojawią się jako pierwsze we wrześniu)

czy jest możliwe zrobienie czegoś takiego za pomocą samego zapytania?
erix
Cytat
Chciałbym zrobić ilość tankowań w miesiącu z założeniem, że ostatnie niepełne tankowania przechodzą na kolejny miesiąc.
Niestety po polu "ilość" nie jestem w stanie określić czy tankowanie jest od pełna czy nie. Określa to pole "pełne".

Podzapytanie?
TomASS
Dzięki Przemku, a jak je sobie wyobrażasz? Bo ja nie potrafię:/
Noidea
Pobierasz wszystkie rekordy z czerwca, których data jest mniejsza lub równa dacie ostatniego pełnego tankowania w czerwcu i łączysz to z rekordami z maja, których data jest większa niż data ostatniego pełnego tankowania w maju.

Łączenie to UNION, a pobieranie dat ostatnich pełnych tankowań w miesiącu robisz podzapytaniami
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.