Crtani Dejan Savic Beograd
Član broj: 95930 Poruke: 46 *.adsl.beocity.net.
Sajt: www.klikeri.net
|
Već sam ti dao odgovor na pitanje kako se obavlja racunica oko uzimanja i vraćanja, a sada evo malo detaljnije.
U tabeli Filomovi imaš informaciju o tome koliko imaš primeraka svakog filma. Čini mi se da ti tripuješ da taj broj treba nekako da se promeni kada se film uzme, pa posle opet da se promeni kada film bude vraćen. To zaboravi, to je pogrešno. To je informacija o broju primeraka, i to tako stoji dok se ne nabavi još neka kopija ili se neka ne baci u kantu.
Informaciju o broju uzetih filmova koji još nisu vraćeni dobijaš na osnovu Prometa, tako što vidiš koliko ima datuma vraćanja koji su prazni, što označava da je film uzet, a nije vraćen.
Evo ovako: Napravi query koji ces snimiti pod nazivom NevraceniFilmovi, ubaci tabelu promet, klikni na Total.
Ubaci najpre kolonu ID_filma i ispod nje ostavi da stoji opcija GroupBy.
Zatim opet dodaj kolonu ID_filma ali ispod izaberi opciju Count. Da bi promenio naziv kolone, klikni ispred ID_filma i dopisi BrojNevracenih:. Znaci, u toj drugoj koloni treba da ti pise: BrojNevracenih:ID_filma
Kao trecu kolonu stavi DatumVracanja, umesto GroupBy izaberi Where, a ispod upisi is null. Ta kolona treba da je odstiklirana.
Ili, ako ti je lakse, idi na SQL view i upisi ovaj kod:
SELECT Promet.ID_filma, Count(Promet.ID_filma) AS BrojNevracenih
FROM Promet
WHERE Promet.datumVracanja Is Null
GROUP BY Promet.ID_filma;
Sada imamo ukupan broj kopija u tabeli Filmovi, imamo broj nevracenih kopija u upitu BrojNevracenih, lako cemo dobiti BrojRaspolozivih.
Napravi novi upit, ubaci tabelu Filmovi, i ubaci tabelu BrojNevracenih.Uzmi ID_filma i prenesi ga na ID u tabeli Filmovi cime ces spojiti tabelu i upit.
Onda za prvu kolonu stavi ID_filma, za drugu stavi Broj primjeraka iz tabele filmovi, za trecu BrojNevracenih, a cetvrtu kucaj:
[BrojRaspolozivih]:[Broj primjeraka]-[BrojNevracenih]
ili cist SQL ako vise volis:
SELECT
brojNevracenih.ID_filma,
Filmovi.[Broj primjeraka],
brojNevracenih.brojNevracenih,
[Broj Primjeraka]-[brojNevracenih] AS BrojRasolozivih
FROM brojNevracenih INNER JOIN Filmovi ON brojNevracenih.ID_filma = Filmovi.ID
Ove uglaste zagrade moraju da stoje gde god si davao nazive poljima sa razmacima.
Krajnji rezultat ovog upita je da za svaki film koji je ikad izdavan imas azurnu informaciju: koliko kopija imas ukupno, koliko nije vraceno i koliko ti je kopija na raspolaganju.
Javi da li si uspeo.
|