Przejdź do głównej treści
  1. Strona główna
  2. Technik informatyk
  3. INF.03
  4. Pytanie

Kwalifikacja: INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych

Zawód: Technik informatyk, Technik programista

Kategorie: Programowanie webowe Bazy danych

W tabeli mieszkancy, która zawiera pola id, imie, nazwisko, ulica, numer oraz czynsz (kwota całkowita), należy uzyskać informacje o osobach zamieszkujących ulicę Mickiewicza pod numerami 71, 72, 80, których czynsz nie przekracza 1000 zł. Klauzula WHERE w zapytaniu powinna wyglądać następująco

Kiedy piszemy zapytanie SQL, klauzula WHERE powinna wyglądać tak: 'WHERE ulica = 'Mickiewicza' AND numer IN (71, 72, 80) AND czynsz < 1000'. Dlaczego to działa? Bo ta klauzula jasno określa, że interesują nas tylko mieszkańcy z ulicy Mickiewicza, mający numery 71, 72 lub 80, i którzy płacą czynsz mniejszy niż 1000 zł. Użycie AND sprawia, że wszystkie te warunki muszą być spełnione naraz, co jest naprawdę ważne. Możemy to sobie wyobrazić w kontekście zarządzania nieruchomościami, gdzie chcemy pokazać tylko wybraną grupę mieszkańców, na przykład do analizy ich sytuacji finansowej. I tak na marginesie – w SQL lepiej unikać OR, gdy chcemy dostąpić do jasno określonych danych, ponieważ może to dać nam za dużo wyników lub takie, których nie chcemy.
Jak patrzę na twoje odpowiedzi, to widzę, że główny problem leży w tym, jak używasz operatorów logicznych i jak stawiasz warunki. W pierwszej próbie, zastosowanie OR, czyli 'ulica = 'Mickiewicza' OR numer IN (71, 72, 80) OR czynsz < 1000', prowadzi do tego, że dostaniesz dane wszystkich mieszkańców, nawet tych z innych ulic, co zupełnie nie jest tym, czego szukamy. W drugiej opcji, klauzula 'numer > 70 AND numer < 81' znowu nie daje ci dokładnych numerów mieszkań, bo może zwrócić wyniki spoza naszego zakresu. Trzecia wersja też nie wychodzi najlepiej, bo łączy operator OR i przez to dostajesz dane o czynszu poniżej 1000 zł, niezależnie od lokalizacji. Kluczowy błąd w zrozumieniu SQL polega na tym, że AND i OR różnią się w swoich zastosowaniach i wpływają na końcowy wynik. Ogólnie, lepiej starannie przemyśleć zapytania SQL i testować je na małych zbiorach danych, żeby nie wpaść w pułapki.

Wymagane logowanie

Ocenianie trudności pytań jest dostępne tylko dla zalogowanych użytkowników. Zaloguj się, aby skorzystać z pełni możliwości platformy.

Twoja ocena pomoże innym uczniom w przygotowaniu do egzaminu, a Tobie pozwoli na dostęp do spersonalizowanych statystyk.

Zgłoś błąd w pytaniu

Rozwiń sekcję i zmień pole, którego dotyczy błąd. Wyślemy tylko zmienione sekcje.

Błędna kwalifikacja
Błąd w treści pytania
Błąd w treści odpowiedzi
Błąd w obrazie
Dane kontaktowe (opcjonalnie)
Podaj email, jeśli chcesz otrzymać informację o rozpatrzeniu zgłoszenia.