Wymaganie brzmi: wyświetlić dane komputerów, dla których spełnione są jednocześnie dwa kryteria: procesor to Intel oraz pamięć RAM ma co najmniej 8 GB. W języku zapytań baz danych taki warunek realizuje się w klauzuli WHERE.
Zapytanie SELECT * FROM komputery WHERE procesor = 'Intel' AND pamiec >= 8; jest poprawne, bo:
- część procesor = 'Intel' filtruje rekordy po wartości tekstowej w kolumnie procesor,
- część pamiec >= 8 zapewnia warunek "nie mniej niż 8", czyli 8 lub więcej,
- operator AND wymusza spełnienie obu kryteriów naraz, więc wynik zawiera tylko komputery zgodne z opisem.
Odpowiedzi z operatorem OR są błędne, ponieważ OR oznacza "albo jedno, albo drugie (lub oba)". To prowadzi do zbyt szerokiego zbioru wyników: zwrócone byłyby także komputery z innym procesorem, jeśli tylko mają ≥8 GB RAM, albo komputery z Intelem, nawet gdy pamięć jest mniejsza niż 8 (w zależności od wariantu).
Warianty z warunkiem pamiec < 8 odwracają sens wymagania "nie mniej niż 8". Taki filtr wybierałby komputery z pamięcią mniejszą niż 8 GB, czyli dokładnie odwrotnie niż w treści zadania.
Wskazówka egzaminacyjna: w treści "… i …"/"… a …" zazwyczaj oznacza koniunkcję (AND), natomiast "… lub …" oznacza alternatywę (OR). Dodatkowo frazę "nie mniej niż" zawsze mapuj na operator >=.