Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Problem z funkcją Policz [Access 2003]

266 views
Skip to first unread message

Basia

unread,
May 24, 2013, 12:10:53 PM5/24/13
to
Rozwiązuję sobie zadania maturalne z informatyki i na poziomie rozszerzonym trafiła mi się "zagwozdka" z zadaniem wykorzystującym Access'a (używam wersji z pakietu Office 2003). Krótko: jest baza danych wypożyczalni filmów z tabelami:
1. FILMY. Pola to: ID_filmu, Tytul, Kraj_produkcji, Gatunek, Cena_w_zl.
2. KLIENCI. Pola to: Pesel, Imie, Nazwisko.
3. WYPOZYCZENIA. Pola to: ID_wyp, Data_wyp, ID_filmu, Pesel.
Dane poprawnie zaimportowane, tabele powiązane relacjami (FILMY i WYPOZYCZENIA polem ID_filmu; KLIENCI i WYPOZYCZENIA polem Pesel), 4 podpunkty zadania zrobione, a w piątym mam problem.
Zadanie jest takie: "Podaj liczbę filmów oraz tytuły filmów, które nie zostały wypożyczone ani razu przez klientów usługi VOD na etapie testowania."
Co zrobiłam?
Utworzyłam kwerendę podsumowującą (włączyłam SUMY) z tabel FILMY i WYPOZYCZENIA. Wzięłam pole Tytul z tabeli FILMY oraz pole ID_wyp z tabeli WYPOZYCZENIA. Dla pola Tytul ustawiłam "Grupuj według", a dla pola ID_wyp wybrałam funkcję Policz. I tu jest problem. Owszem funkcja liczy (poprawnie, sprawdzałam "ręcznie"), ale nie podaje wartości zerowych - czyli nie znajduje filmów niewypożyczonych (nie ma ich w wyniku kwerendy). Zmiana pola na Data_wyp, ID_filmu czy Pesel nic nie daje. Czy funkcja Policz nie podaje wartości zerowych? Czy jakoś można "zmusić" Access'a do podania tych wartości? Czy może poradzić sobie inaczej (jak)? Szperanie w Google nic nie przyniosło.
Z góry dziękuje za pomoc i ewentualną podpowiedź.
Message has been deleted

Krzysztof Naworyta

unread,
May 25, 2013, 7:07:05 AM5/25/13
to
Aby policzyć coś czego nie ma (brak wpisów w tabeli WYPOŻYCZENIA), musisz zastosować kwerendę z sprzężeniem otwartym (LEFT JOIN/RIGHT JOIN):

Select count(*)
From
Filmy f
LEFT JOIN
Wypożyczenia w On f.id_filmu = w.id_filmu
Where
w.id_filmu Is NULL

--
KN
0 new messages