Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Prikaz rezevacije za vise datuma

[es] :: MySQL :: Prikaz rezevacije za vise datuma

[ Pregleda: 1597 | Odgovora: 2 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

alfa-pro
Pancevo

Član broj: 241818
Poruke: 476
*.static.madnet.rs.



+7 Profil

icon Prikaz rezevacije za vise datuma05.11.2015. u 10:47 - pre 103 meseci
Drsutvo imam sistem za renta car i sada nemem ideju kako prikazem kada je neki auto zauzet za vise datuma npr;

Opel corsa je zauzeta od 10.05.2015 do 20.05.2015 i 10 novembra do 20 novembra, takodje je zauzeta i od 25 novembra do 27.
Meni to sa single rezervacijom radi super ali mi neide u glavu kako bi mogao da uradim taj multiple upit .

Klijen u sustini pokrece aplikaciju preko telefona i njemu treba rezultat ko iz rukava. Kad mu neko kaze e treba mi za taj od tog datuma do tog, taj i taj auto
on proveri UPS u decembru je taj rezervisan. itd itd ne znam dali me kontate sta hocu reci?

Moja trenutna baza sadrzi tabele booking (car_id, booking_date, return_date, itd...)

Jel moze neka ideja?

Kada vidjamo uvek ista lica, na kraju ona postaju deo našeg života. A kada postanu
deo našeg života,
onda žele i da nam ga izmene. I ako ne bude po njihovom, nije im pravo. Jer, svaki
čovek ima tačnu predstavu kako bi trebalo da živimo svoj život. A nikad nemaju pojma
kako treba da prožive sopstveni život.
 
Odgovor na temu

djoka_l
Beograd

Član broj: 56075
Poruke: 3453

Jabber: djoka_l


+1462 Profil

icon Re: Prikaz rezevacije za vise datuma05.11.2015. u 11:21 - pre 103 meseci
Dobrodošao u MySQL forum. Moram odmah da ti dam malo "pravila igre" u bilo kom forumu koji se bavi bazama podataka.

Osnovna stvar koja pomaže da dobiješ precizan odgovor u ovim forumima je da napraviš skriptove za kreiranje i popunjavanja baze i da precizno opišeš šta treba da dobiješ.

Recimo:
Code (sql):

CREATE TABLE booking (
   car_id INTEGER,
   booking_date DATE,
   returning_date DATE);

INSERT INTO booking VALUES (1, '2015-05-10', '2015-05-20');
...
 
 
Odgovor na temu

djoka_l
Beograd

Član broj: 56075
Poruke: 3453

Jabber: djoka_l


+1462 Profil

icon Re: Prikaz rezevacije za vise datuma05.11.2015. u 11:33 - pre 103 meseci
E, sada, da vidimo neke upite.

Kako proveriti da li je auto sa car_id = 1 slobodan u periodu od 12. decembra do 15. decembra.

Imamo sledeće slučajeve koji nam ne odgovaraju (auto nije slobodan)

1. rezervacija za auto je pre 12. decembra, a ističe u periodu (ili posle njega) koji nam je potreban.
2. postoji rezervacija kojoj je početak u traženom periodu, a ističe u toku ili posle tog perioda.

Code (sql):

SELECT COUNT(*) FROM booking
WHERE (booking_date <= '2015-12-12' AND retruning_date >= '2015-12-12')
     OR (booking_date BETWEEN '2015-12-12' AND '2015-12-15')
 


Ako ovaj upit vrati 0 onda je auto slobodan, a ako vrati više od nula auto nije slobodan u tom periodu...

Ako umesto count staviš samo * onda ćeš dobiti sve rezervacije koje nam se seku sa traženim periodom (ili upit neće vratiti ništa ako je auto slobodan).

Tvoja aplikacija treba da interpretira ove odgovora i da prikaže na zgodan način rezultat.
 
Odgovor na temu

[es] :: MySQL :: Prikaz rezevacije za vise datuma

[ Pregleda: 1597 | Odgovora: 2 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.