Przejdź do treści
Pełny kurs INF.03

Pytania INF.03: Bazy danych i SQL

697 pytań z odpowiedziami i wyjaśnieniem — 97 pytań teoretycznych i 24 zadań rachunkowych, każde w 25 wariantach. Model relacyjny, klucze, normalizacja, SELECT, JOIN, GROUP BY, INSERT, UPDATE i uprawnienia.

Pytania teoretyczne (97)

1

Poprawna kolejność klauzul w kwerendzie to:

  1. SELECT, FROM, ORDER BY, WHERE
  2. SELECT, FROM, WHERE, GROUP BY, HAVING, ORDER BY
  3. SELECT, WHERE, FROM, ORDER BY, GROUP BY
  4. FROM, SELECT, WHERE, ORDER BY
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. SELECT, FROM, WHERE, GROUP BY, HAVING, ORDER BY

Zamiana kolejności to błąd składni.

Ćwicz w trenerze →

2

Klauzula HAVING służy do:

  1. Ograniczania liczby wyników
  2. Sortowania wyników
  3. Filtrowania grup utworzonych przez GROUP BY
  4. Filtrowania pojedynczych rekordów
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: C. Filtrowania grup utworzonych przez GROUP BY

WHERE filtruje rekordy przed grupowaniem, HAVING grupy po nim.

Ćwicz w trenerze →

3

LEFT JOIN zwraca:

  1. Tylko pasujące pary rekordów
  2. Wszystkie rekordy z obu tabel
  3. Rekordy bez dopasowania
  4. Wszystkie rekordy z tabeli lewej i pasujące z prawej
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. Wszystkie rekordy z tabeli lewej i pasujące z prawej

Brakujące dane z prawej strony wypełniane są wartością NULL.

Ćwicz w trenerze →

4

Która kwerenda wypisze pięć najdroższych produktów?

  1. SELECT * FROM produkty LIMIT 5 ORDER BY cena
  2. SELECT * FROM produkty ORDER BY cena DESC LIMIT 5
  3. SELECT TOP 5 FROM produkty
  4. SELECT * FROM produkty WHERE cena = MAX(5)
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. SELECT * FROM produkty ORDER BY cena DESC LIMIT 5

ORDER BY przed LIMIT.

Ćwicz w trenerze →

5

Znak % w klauzuli LIKE zastępuje:

  1. Tylko cyfry
  2. Znak procenta
  3. Dokładnie jeden znak
  4. Dowolny ciąg znaków
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. Dowolny ciąg znaków

Podkreślnik zastępuje jeden znak.

Ćwicz w trenerze →

6

Jak sprawdzić, czy pole nie ma wartości?

  1. WHERE pole IS EMPTY
  2. WHERE pole IS NULL
  3. WHERE pole = NULL
  4. WHERE pole = ""
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. WHERE pole IS NULL

Porównanie = NULL nigdy nie zwróci prawdy.

Ćwicz w trenerze →

7

Funkcja COUNT(*) zwraca:

  1. Sumę wartości
  2. Największą wartość
  3. Średnią wartość
  4. Liczbę rekordów
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. Liczbę rekordów

SUM sumuje, AVG liczy średnią, MAX zwraca maksimum.

Ćwicz w trenerze →

8

Polecenie UPDATE bez klauzuli WHERE:

  1. Nie wykona się
  2. Zmieni pierwszy rekord
  3. Zgłosi błąd składni
  4. Zmieni wszystkie rekordy w tabeli
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. Zmieni wszystkie rekordy w tabeli

To najczęstszy i najbardziej kosztowny błąd na egzaminie.

Ćwicz w trenerze →

9

Które polecenie dodaje kolumnę do istniejącej tabeli?

  1. UPDATE TABLE ... ADD
  2. ALTER TABLE ... ADD
  3. CREATE TABLE ... ADD
  4. INSERT COLUMN
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. ALTER TABLE ... ADD

ALTER TABLE zmienia strukturę już istniejącej tabeli.

Ćwicz w trenerze →

10

AUTO_INCREMENT stosuje się najczęściej do:

  1. Pola daty
  2. Klucza głównego
  3. Klucza obcego
  4. Pola tekstowego
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Klucza głównego

Automatycznie nadaje kolejny numer nowemu rekordowi.

Ćwicz w trenerze →

11

Relację wiele do wielu realizuje się przez:

  1. Dwa klucze główne w jednej tabeli
  2. Widok łączący tabele
  3. Dodatkową tabelę pośredniczącą z dwoma kluczami obcymi
  4. Klucz obcy w obu tabelach
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: C. Dodatkową tabelę pośredniczącą z dwoma kluczami obcymi

Bez tabeli łączącej nie da się zapisać takiej relacji.

Ćwicz w trenerze →

12

Które polecenie nadaje użytkownikowi uprawnienia?

  1. ACCESS
  2. GRANT
  3. ALLOW
  4. PERMIT
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. GRANT

Odbieranie uprawnień to REVOKE.

Ćwicz w trenerze →

13

Typ danych odpowiedni dla ceny produktu to:

  1. INT
  2. DECIMAL
  3. BOOLEAN
  4. TEXT
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. DECIMAL

DECIMAL przechowuje wartości ułamkowe bez błędów zaokrągleń.

Ćwicz w trenerze →

14

Kwerenda ORDER BY RAND() LIMIT 3 zwróci:

  1. Trzy pierwsze rekordy
  2. Trzy losowe rekordy
  3. Trzy ostatnie rekordy
  4. Wszystkie rekordy w losowej kolejności
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Trzy losowe rekordy

RAND losuje kolejność, LIMIT ogranicza wynik.

Ćwicz w trenerze →

15

DISTINCT w kwerendzie SELECT powoduje:

  1. Ograniczenie liczby wyników
  2. Pominięcie powtarzających się wartości
  3. Grupowanie rekordów
  4. Sortowanie wyników
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Pominięcie powtarzających się wartości

Zwraca listę wartości unikalnych.

Ćwicz w trenerze →

16

Pierwsza postać normalna wymaga, aby:

  1. Nie było kluczy obcych
  2. Dane były posortowane
  3. Każda tabela miała indeks
  4. Wartości w polach były niepodzielne
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. Wartości w polach były niepodzielne

1NF eliminuje pola wielowartościowe.

Ćwicz w trenerze →

17

Klucz obcy służy do:

  1. Nadawania uprawnień
  2. Powiązania rekordu z rekordem innej tabeli
  3. Szyfrowania danych
  4. Automatycznej numeracji
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Powiązania rekordu z rekordem innej tabeli

Wskazuje na klucz główny tabeli nadrzędnej.

Ćwicz w trenerze →

18

Które polecenie usuwa całą tabelę razem ze strukturą?

  1. CLEAR TABLE
  2. TRUNCATE TABLE
  3. DROP TABLE
  4. DELETE FROM
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: C. DROP TABLE

DELETE usuwa rekordy, TRUNCATE czyści zawartość, DROP usuwa tabelę.

Ćwicz w trenerze →

19

Podkwerenda to:

  1. Kwerenda z klauzulą JOIN
  2. Kwerenda zagnieżdżona wewnątrz innej kwerendy
  3. Kwerenda na widoku
  4. Kwerenda modyfikująca strukturę
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Kwerenda zagnieżdżona wewnątrz innej kwerendy

Najczęściej występuje w klauzuli WHERE.

Ćwicz w trenerze →

20

Który typ MySQL przechowuje małe liczby całkowite w jednym bajcie?

  1. DECIMAL
  2. TINYINT
  3. SMALLINT
  4. INT
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. TINYINT

TINYINT zajmuje 1 bajt; większe typy całkowite zajmują więcej miejsca.

Ćwicz w trenerze →

21

Jak pobrać dwa rekordy z najwcześniejszą datą zakończenia?

  1. ORDER BY data_zakonczenia DESC LIMIT 2
  2. LIMIT 2 ORDER BY data_zakonczenia
  3. WHERE data_zakonczenia = MIN(2)
  4. ORDER BY data_zakonczenia ASC LIMIT 2
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. ORDER BY data_zakonczenia ASC LIMIT 2

Sortowanie rosnące ustawia najwcześniejsze daty na początku, a LIMIT wybiera dwa wiersze.

Ćwicz w trenerze →

22

Które polecenie pobiera wszystkie kolumny z tabeli klienci?

  1. SELECT klienci;
  2. SELECT * FROM klienci;
  3. SELECT ALL klienci;
  4. GET ALL FROM klienci;
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. SELECT * FROM klienci;

Gwiazdka oznacza komplet kolumn. Na egzaminie zwykle lepiej wymienić kolumny wprost.

Ćwicz w trenerze →

23

Klauzula WHERE cena BETWEEN 10 AND 20 wybierze rekordy o cenie:

  1. Poniżej 10
  2. Od 10 do 20 włącznie z krańcami
  3. Powyżej 20
  4. Od 11 do 19
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Od 10 do 20 włącznie z krańcami

BETWEEN jest przedziałem domkniętym z obu stron.

Ćwicz w trenerze →

24

Zapis WHERE miasto IN ('Gdańsk', 'Sopot', 'Gdynia') to skrócona forma:

  1. Grupowania po nazwie miasta
  2. Trzech warunków połączonych operatorem OR
  3. Trzech warunków połączonych operatorem AND
  4. Sortowania po nazwie miasta
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Trzech warunków połączonych operatorem OR

IN sprawdza przynależność do zbioru wartości.

Ćwicz w trenerze →

25

Aby posortować wyniki malejąco, do klauzuli ORDER BY dopisuje się:

  1. ASC
  2. DOWN
  3. DESC
  4. REVERSE
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: C. DESC

Bez podania kierunku baza sortuje rosnąco, czyli ASC.

Ćwicz w trenerze →

26

Zapis LIMIT 10, 5 w MySQL zwróci:

  1. Dziesięć rekordów, pomijając pierwsze pięć
  2. Piętnaście pierwszych rekordów
  3. Pięć rekordów, pomijając pierwsze dziesięć
  4. Rekordy od 10 do 15 według identyfikatora
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: C. Pięć rekordów, pomijając pierwsze dziesięć

Pierwsza liczba to przesunięcie, druga to liczba zwracanych wierszy.

Ćwicz w trenerze →

27

Słowo kluczowe AS w kwerendzie służy do:

  1. Sortowania wyników
  2. Łączenia tabel
  3. Nadania kolumnie lub tabeli aliasu
  4. Filtrowania rekordów
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: C. Nadania kolumnie lub tabeli aliasu

Alias zmienia nagłówek w wyniku i skraca zapis przy złączeniach.

Ćwicz w trenerze →

28

Funkcja AVG(cena) zwraca:

  1. Największą wartość
  2. Średnią arytmetyczną wartości w kolumnie
  3. Sumę wartości
  4. Liczbę rekordów
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Średnią arytmetyczną wartości w kolumnie

Wartości NULL są przy liczeniu średniej pomijane.

Ćwicz w trenerze →

29

Czym różni się COUNT(*) od COUNT(nazwisko)?

  1. Nie różnią się niczym
  2. Pierwsze liczy wszystkie wiersze, drugie pomija te z wartością NULL
  3. Drugie liczy tylko wartości unikalne
  4. Pierwsze liczy kolumny, drugie wiersze
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Pierwsze liczy wszystkie wiersze, drugie pomija te z wartością NULL

Funkcje agregujące poza COUNT(*) ignorują wartości puste.

Ćwicz w trenerze →

30

Klauzula WHERE w odróżnieniu od HAVING filtruje:

  1. Kolumny, a nie wiersze
  2. Pojedyncze wiersze przed pogrupowaniem
  3. Grupy po ich utworzeniu
  4. Wyłącznie wyniki funkcji agregujących
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Pojedyncze wiersze przed pogrupowaniem

Dlatego w WHERE nie wolno użyć funkcji agregującej — grupy jeszcze nie istnieją.

Ćwicz w trenerze →

31

INNER JOIN zwraca:

  1. Rekordy, które nie mają dopasowania
  2. Wyłącznie te pary rekordów, które spełniają warunek złączenia w obu tabelach
  3. Wszystkie rekordy z lewej tabeli
  4. Wszystkie rekordy z obu tabel
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Wyłącznie te pary rekordów, które spełniają warunek złączenia w obu tabelach

Rekordy bez pary wypadają z wyniku — to najczęstsza przyczyna brakujących wierszy na egzaminie.

Ćwicz w trenerze →

32

Operator UNION w odróżnieniu od UNION ALL:

  1. Zachowuje wszystkie duplikaty
  2. Łączy tabele w poziomie
  3. Usuwa powtarzające się wiersze z wyniku
  4. Wymaga klauzuli ON
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: C. Usuwa powtarzające się wiersze z wyniku

UNION dokłada operację usuwania duplikatów, więc bywa wolniejszy.

Ćwicz w trenerze →

33

Poprawny zapis dodania rekordu to:

  1. INSERT VALUES ('Ala', '3A') INTO uczniowie;
  2. INSERT INTO uczniowie (imie, klasa) VALUES ('Ala', '3A');
  3. INSERT uczniowie SET ('Ala', '3A');
  4. ADD TO uczniowie VALUES ('Ala', '3A');
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. INSERT INTO uczniowie (imie, klasa) VALUES ('Ala', '3A');

Kolejność wartości musi odpowiadać kolejności wymienionych kolumn.

Ćwicz w trenerze →

34

Czym różni się DELETE FROM tabela; od DROP TABLE tabela;?

  1. Oba kasują całą bazę
  2. Pierwsze usuwa rekordy i zostawia strukturę, drugie kasuje całą tabelę
  3. Pierwsze kasuje tabelę, drugie tylko dane
  4. Oba usuwają wyłącznie dane
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Pierwsze usuwa rekordy i zostawia strukturę, drugie kasuje całą tabelę

Po DELETE tabela istnieje i można do niej znowu wstawiać rekordy.

Ćwicz w trenerze →

35

Polecenie TRUNCATE TABLE w odróżnieniu od DELETE bez warunku:

  1. Pozwala usunąć wybrane wiersze
  2. Kasuje wszystkie wiersze szybciej i zeruje licznik AUTO_INCREMENT
  3. Usuwa również strukturę tabeli
  4. Wymaga klauzuli WHERE
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Kasuje wszystkie wiersze szybciej i zeruje licznik AUTO_INCREMENT

TRUNCATE to polecenie DDL — działa jak odtworzenie pustej tabeli.

Ćwicz w trenerze →

36

Ograniczenie UNIQUE na kolumnie gwarantuje, że:

  1. Kolumna nie przyjmie wartości NULL
  2. Wartości będą posortowane
  3. Żadna wartość nie powtórzy się w tej kolumnie
  4. Kolumna będzie kluczem głównym
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: C. Żadna wartość nie powtórzy się w tej kolumnie

W odróżnieniu od klucza głównego kolumna UNIQUE może przyjąć wartość pustą.

Ćwicz w trenerze →

37

Klauzula DEFAULT przy definicji kolumny określa:

  1. Maksymalną długość pola
  2. Wartość, której nie wolno użyć
  3. Sposób sortowania kolumny
  4. Wartość wstawianą, gdy przy dodawaniu rekordu pominięto tę kolumnę
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. Wartość wstawianą, gdy przy dodawaniu rekordu pominięto tę kolumnę

Bez niej pominięta kolumna dostaje NULL albo zgłasza błąd, jeśli ma NOT NULL.

Ćwicz w trenerze →

38

Typ CHAR(10) różni się od VARCHAR(10) tym, że:

  1. Nie przyjmuje polskich znaków
  2. Może pomieścić dowolnie długi tekst
  3. Zawsze zajmuje 10 znaków, uzupełniając krótsze wartości spacjami
  4. Przechowuje wyłącznie cyfry
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: C. Zawsze zajmuje 10 znaków, uzupełniając krótsze wartości spacjami

CHAR opłaca się przy stałej długości, np. kodzie pocztowym.

Ćwicz w trenerze →

39

Do przechowania samej daty urodzenia, bez godziny, właściwy jest typ:

  1. DATETIME
  2. TIMESTAMP
  3. DATE
  4. TIME
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: C. DATE

DATE zapisuje rok, miesiąc i dzień w formacie RRRR-MM-DD.

Ćwicz w trenerze →

40

Typ TEXT stosuje się, gdy:

  1. Pole ma zawierać wyłącznie datę
  2. Tekst może być dłuższy niż limit typu VARCHAR
  3. Trzeba przechować liczbę całkowitą
  4. Wartości mają być unikalne
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Tekst może być dłuższy niż limit typu VARCHAR

Kolumny TEXT gorzej się indeksuje, więc do krótkich napisów lepszy jest VARCHAR.

Ćwicz w trenerze →

41

Indeks założony na kolumnie:

  1. Zmniejsza rozmiar bazy
  2. Przyspiesza wyszukiwanie, ale spowalnia dodawanie i modyfikację rekordów
  3. Przyspiesza wszystkie operacje bez wyjątku
  4. Wymusza unikalność wartości
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Przyspiesza wyszukiwanie, ale spowalnia dodawanie i modyfikację rekordów

Każdy zapis musi zaktualizować także strukturę indeksu.

Ćwicz w trenerze →

42

Funkcja CONCAT(imie, ' ', nazwisko) w MySQL:

  1. Zlicza znaki w napisie
  2. Rozdziela napis na części
  3. Skleja wartości w jeden napis
  4. Porównuje dwa napisy
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: C. Skleja wartości w jeden napis

Liczbę znaków zwraca LENGTH, a fragment napisu SUBSTRING.

Ćwicz w trenerze →

43

Funkcja YEAR(data_zamowienia) zwróci:

  1. Datę powiększoną o rok
  2. Nazwę miesiąca
  3. Liczbę dni od daty
  4. Rok wyciągnięty z daty
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. Rok wyciągnięty z daty

Analogicznie działają MONTH i DAY. Bieżącą datę i czas daje NOW().

Ćwicz w trenerze →

44

Wynikiem porównania NULL = NULL w SQL jest:

  1. Prawda
  2. Wartość nieokreślona, więc warunek nie zostanie spełniony
  3. Błąd składni
  4. Fałsz
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Wartość nieokreślona, więc warunek nie zostanie spełniony

Dlatego pustkę sprawdza się wyłącznie operatorem IS NULL.

Ćwicz w trenerze →

45

Widok (VIEW) w bazie danych to:

  1. Kopia zapasowa tabeli
  2. Zapisane zapytanie, z którego korzysta się jak z tabeli
  3. Indeks na wielu kolumnach
  4. Uprawnienie użytkownika
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Zapisane zapytanie, z którego korzysta się jak z tabeli

Widok nie przechowuje własnych danych — pobiera je z tabel źródłowych przy każdym odwołaniu.

Ćwicz w trenerze →

46

Polecenie ROLLBACK w transakcji:

  1. Zatwierdza zmiany na stałe
  2. Tworzy kopię zapasową
  3. Wycofuje wszystkie zmiany wykonane od jej rozpoczęcia
  4. Blokuje tabelę dla innych użytkowników
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: C. Wycofuje wszystkie zmiany wykonane od jej rozpoczęcia

Zatwierdzenie zmian to COMMIT.

Ćwicz w trenerze →

47

Polecenia CREATE, ALTER i DROP należą do grupy:

  1. DCL, czyli języka kontroli dostępu
  2. TCL, czyli języka sterowania transakcjami
  3. DML, czyli języka manipulowania danymi
  4. DDL, czyli języka definiowania danych
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. DDL, czyli języka definiowania danych

SELECT, INSERT, UPDATE i DELETE to DML.

Ćwicz w trenerze →

48

Polecenie REVOKE służy do:

  1. Cofnięcia ostatniej transakcji
  2. Przywrócenia kopii zapasowej
  3. Usunięcia użytkownika z serwera
  4. Odebrania użytkownikowi wcześniej nadanych uprawnień
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. Odebrania użytkownikowi wcześniej nadanych uprawnień

Nadawanie uprawnień to GRANT, usunięcie konta to DROP USER.

Ćwicz w trenerze →

49

Eksport bazy w phpMyAdmin do pliku .sql zapisuje:

  1. Wyłącznie zrzut ekranu tabel
  2. Wyłącznie dane, bez struktury
  3. Skompresowany obraz dysku
  4. Polecenia SQL odtwarzające strukturę i dane
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. Polecenia SQL odtwarzające strukturę i dane

Import polega na wykonaniu tych poleceń na docelowym serwerze.

Ćwicz w trenerze →

50

Kodowanie utf8mb4_general_ci wybiera się przy tworzeniu bazy, aby:

  1. Zaszyfrować dane w tabelach
  2. Poprawnie przechowywać polskie znaki diakrytyczne
  3. Przyspieszyć wykonywanie kwerend
  4. Ograniczyć rozmiar bazy
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Poprawnie przechowywać polskie znaki diakrytyczne

Skrót ci oznacza porównywanie bez rozróżniania wielkości liter.

Ćwicz w trenerze →

51

W jakiej kolejności baza wykonuje kwerendę z grupowaniem?

  1. WHERE, FROM, SELECT, GROUP BY, HAVING, ORDER BY
  2. FROM, SELECT, WHERE, ORDER BY, GROUP BY, HAVING
  3. SELECT, FROM, WHERE, GROUP BY, ORDER BY, HAVING
  4. FROM, WHERE, GROUP BY, HAVING, SELECT, ORDER BY
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. FROM, WHERE, GROUP BY, HAVING, SELECT, ORDER BY

Dlatego alias z SELECT nie działa w WHERE, ale działa w ORDER BY.

Ćwicz w trenerze →

52

Aby wypisać nazwy działów wraz z liczbą pracowników w każdym z nich, potrzebna jest klauzula:

  1. HAVING dzial
  2. GROUP BY dzial
  3. ORDER BY dzial
  4. DISTINCT dzial
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. GROUP BY dzial

Grupowanie tworzy jeden wiersz wyniku na każdą wartość kolumny.

Ćwicz w trenerze →

53

Kwerenda ma zwrócić działy zatrudniające więcej niż pięć osób. Warunek trzeba zapisać w:

  1. GROUP BY COUNT(*) > 5
  2. HAVING COUNT(*) > 5
  3. WHERE COUNT(*) > 5
  4. ORDER BY COUNT(*) > 5
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. HAVING COUNT(*) > 5

Warunek dotyczy wyniku agregacji, więc może stać wyłącznie w HAVING.

Ćwicz w trenerze →

54

Klauzula ON DELETE CASCADE przy kluczu obcym oznacza, że:

  1. Nie da się usunąć rekordu nadrzędnego
  2. Usunięcie zostanie zapisane w dzienniku
  3. Rekordy podrzędne dostaną wartość NULL
  4. Usunięcie rekordu nadrzędnego skasuje powiązane rekordy podrzędne
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. Usunięcie rekordu nadrzędnego skasuje powiązane rekordy podrzędne

Wariant ON DELETE SET NULL zamiast kasować, czyści pole klucza obcego.

Ćwicz w trenerze →

55

Integralność referencyjna oznacza, że:

  1. Każda tabela ma klucz główny
  2. Baza ma aktualną kopię zapasową
  3. Klucz obcy wskazuje na istniejący rekord w tabeli nadrzędnej
  4. Dane nie zawierają wartości NULL
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: C. Klucz obcy wskazuje na istniejący rekord w tabeli nadrzędnej

Baza sama odrzuci próbę wstawienia klucza obcego bez odpowiednika w tabeli nadrzędnej.

Ćwicz w trenerze →

56

Silnik InnoDB w MySQL wybiera się zamiast MyISAM przede wszystkim dlatego, że:

  1. Zajmuje mniej miejsca na dysku
  2. Nie wymaga definiowania kluczy głównych
  3. Jest jedynym obsługującym indeksy
  4. Obsługuje klucze obce i transakcje
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. Obsługuje klucze obce i transakcje

MyISAM ignoruje definicje kluczy obcych, więc nie pilnuje integralności.

Ćwicz w trenerze →

57

Ile rekordów zwróci SELECT COUNT(*) FROM zamowienia; dla pustej tabeli?

  1. Zero wierszy
  2. Błąd wykonania
  3. Wartość NULL
  4. Jeden wiersz z wartością 0
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. Jeden wiersz z wartością 0

Funkcja agregująca bez grupowania zawsze zwraca dokładnie jeden wiersz.

Ćwicz w trenerze →

58

Wiersz tabeli w modelu relacyjnym nazywany jest formalnie:

  1. Relacją
  2. Krotką
  3. Atrybutem
  4. Domeną
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Krotką

Kolumna to atrybut, cała tabela to relacja, a zbiór dopuszczalnych wartości to dziedzina.

Na podstawie: Database Design – 2nd Edition (Adrienne Watt, Nelson Eng), CC BY 4.0.

Ćwicz w trenerze →

59

Stopień relacji (degree) w modelu relacyjnym to:

  1. Liczba kluczy obcych
  2. Liczba atrybutów, czyli kolumn
  3. Liczba krotek, czyli wierszy
  4. Liczba tabel powiązanych relacją
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Liczba atrybutów, czyli kolumn

Liczba wierszy to liczność (kardynalność) relacji.

Na podstawie: Database Design – 2nd Edition (Adrienne Watt, Nelson Eng), CC BY 4.0.

Ćwicz w trenerze →

60

Klucz kandydujący to:

  1. Klucz obcy oczekujący na powiązanie
  2. Dowolna kolumna z ograniczeniem NOT NULL
  3. Klucz główny po jego zmianie
  4. Atrybut lub zestaw atrybutów jednoznacznie identyfikujący krotkę, z którego można wybrać klucz główny
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. Atrybut lub zestaw atrybutów jednoznacznie identyfikujący krotkę, z którego można wybrać klucz główny

Spośród kluczy kandydujących projektant wybiera jeden na klucz główny; pozostałe zostają kluczami alternatywnymi.

Na podstawie: Database Design – 2nd Edition (Adrienne Watt, Nelson Eng), CC BY 4.0.

Ćwicz w trenerze →

61

Klucz złożony (composite key) to klucz zbudowany z:

  1. Klucza głównego i klucza obcego
  2. Co najmniej dwóch kolumn, które dopiero razem identyfikują rekord
  3. Kolumny z ograniczeniem UNIQUE
  4. Jednej kolumny typu tekstowego
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Co najmniej dwóch kolumn, które dopiero razem identyfikują rekord

Typowy przykład to tabela łącząca w relacji wiele do wielu.

Na podstawie: Database Design – 2nd Edition (Adrienne Watt, Nelson Eng), CC BY 4.0.

Ćwicz w trenerze →

62

Klucz wtórny (secondary key) służy przede wszystkim do:

  1. Wymuszenia unikalności wartości
  2. Wyszukiwania i sortowania danych, bez gwarancji jednoznacznej identyfikacji rekordu
  3. Wiązania dwóch tabel
  4. Zastąpienia klucza głównego
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Wyszukiwania i sortowania danych, bez gwarancji jednoznacznej identyfikacji rekordu

Nazwisko nadaje się na klucz wtórny — ułatwia wyszukiwanie, ale nie jest unikalne.

Na podstawie: Database Design – 2nd Edition (Adrienne Watt, Nelson Eng), CC BY 4.0.

Ćwicz w trenerze →

63

Reguła integralności encji wymaga, aby klucz główny:

  1. Był powiązany z kluczem obcym
  2. Nigdy nie przyjmował wartości NULL
  3. Był zawsze liczbą całkowitą
  4. Składał się z jednej kolumny
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Nigdy nie przyjmował wartości NULL

Rekord bez wartości klucza głównego byłby nierozróżnialny od innych.

Na podstawie: Database Design – 2nd Edition (Adrienne Watt, Nelson Eng), CC BY 4.0.

Ćwicz w trenerze →

64

Anomalia wstawiania w źle zaprojektowanej tabeli polega na tym, że:

  1. Klucz główny powtarza się w dwóch wierszach
  2. Nie da się dodać jednej informacji bez znajomości innej, niezwiązanej z nią
  3. Wstawienie rekordu trwa zbyt długo
  4. Dodany rekord znika po ponownym uruchomieniu serwera
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Nie da się dodać jednej informacji bez znajomości innej, niezwiązanej z nią

Nie da się zapisać nowego kursu, dopóki nie zapisze się studenta, jeśli obie informacje siedzą w jednej tabeli.

Na podstawie: Database Design – 2nd Edition (Adrienne Watt, Nelson Eng), CC BY 4.0.

Ćwicz w trenerze →

65

Anomalia usuwania występuje, gdy:

  1. Po usunięciu rekordu numeracja się nie zmienia
  2. Skasowanie rekordu powoduje utratę informacji, której nie chciano usuwać
  3. Rekordu nie da się usunąć z powodu klucza obcego
  4. Usunięcie rekordu trwa zbyt długo
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Skasowanie rekordu powoduje utratę informacji, której nie chciano usuwać

Usunięcie ostatniego studenta zapisanego na kurs kasuje przy okazji informację o istnieniu kursu.

Na podstawie: Database Design – 2nd Edition (Adrienne Watt, Nelson Eng), CC BY 4.0.

Ćwicz w trenerze →

66

Anomalia modyfikacji (aktualizacji) bierze się z:

  1. Użycia typu VARCHAR zamiast CHAR
  2. Powielenia tej samej informacji w wielu wierszach, przez co zmiana musi objąć wszystkie
  3. Zbyt małej liczby indeksów
  4. Braku klucza głównego
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Powielenia tej samej informacji w wielu wierszach, przez co zmiana musi objąć wszystkie

Zmiana adresu dostawcy powtórzonego w stu wierszach wymaga stu poprawek — pominięcie jednej rozspójnia dane.

Na podstawie: Database Design – 2nd Edition (Adrienne Watt, Nelson Eng), CC BY 4.0.

Ćwicz w trenerze →

67

Tabela jest w drugiej postaci normalnej, gdy jest w pierwszej postaci normalnej oraz:

  1. Każda kolumna ma inny typ danych
  2. Ma zdefiniowany klucz obcy
  3. Każdy atrybut niekluczowy zależy od całego klucza głównego, a nie od jego części
  4. Nie zawiera wartości NULL
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: C. Każdy atrybut niekluczowy zależy od całego klucza głównego, a nie od jego części

Problem dotyczy wyłącznie tabel z kluczem złożonym — przy kluczu jednokolumnowym 2NF wynika z 1NF.

Na podstawie: Database Design – 2nd Edition (Adrienne Watt, Nelson Eng), CC BY 4.0.

Ćwicz w trenerze →

68

Tabela jest w trzeciej postaci normalnej, gdy jest w drugiej postaci normalnej oraz:

  1. Nie ma kluczy obcych
  2. Żaden atrybut niekluczowy nie zależy od innego atrybutu niekluczowego
  3. Wszystkie kolumny są indeksowane
  4. Klucz główny jest złożony
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Żaden atrybut niekluczowy nie zależy od innego atrybutu niekluczowego

Chodzi o usunięcie zależności przechodnich, np. kodu pocztowego wyznaczającego miasto.

Na podstawie: Database Design – 2nd Edition (Adrienne Watt, Nelson Eng), CC BY 4.0.

Ćwicz w trenerze →

69

Zależność przechodnia w tabeli występuje, gdy:

  1. Kolumna zawiera wartości powtarzalne
  2. Kolumna niekluczowa jest wyznaczana przez inną kolumnę niekluczową
  3. Klucz obcy wskazuje na własną tabelę
  4. Dwie tabele mają ten sam klucz główny
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Kolumna niekluczowa jest wyznaczana przez inną kolumnę niekluczową

To dokładnie ta zależność, którą usuwa trzecia postać normalna.

Na podstawie: Database Design – 2nd Edition (Adrienne Watt, Nelson Eng), CC BY 4.0.

Ćwicz w trenerze →

70

Głównym celem normalizacji bazy danych jest:

  1. Zwiększenie liczby kluczy obcych
  2. Ograniczenie redundancji i wyeliminowanie anomalii przy zapisie danych
  3. Przyspieszenie wszystkich zapytań
  4. Zmniejszenie liczby tabel
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Ograniczenie redundancji i wyeliminowanie anomalii przy zapisie danych

Normalizacja zwykle zwiększa liczbę tabel i wymusza złączenia przy odczycie.

Na podstawie: Database Design – 2nd Edition (Adrienne Watt, Nelson Eng), CC BY 4.0.

Ćwicz w trenerze →

71

Encja w modelu związków encji odpowiada w bazie relacyjnej:

  1. Kluczowi obcemu
  2. Tabeli
  3. Pojedynczej kolumnie
  4. Pojedynczemu wierszowi
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Tabeli

Atrybuty encji stają się kolumnami, a jej wystąpienia wierszami.

Na podstawie: Database Design – 2nd Edition (Adrienne Watt, Nelson Eng), CC BY 4.0.

Ćwicz w trenerze →

72

Encja słaba w modelu ERD to encja, która:

  1. Występuje tylko raz w bazie
  2. Nie ma własnego klucza głównego i identyfikuje się przez encję nadrzędną
  3. Nie ma żadnych atrybutów
  4. Nie bierze udziału w żadnym związku
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Nie ma własnego klucza głównego i identyfikuje się przez encję nadrzędną

Jej istnienie zależy od encji nadrzędnej — usunięcie nadrzędnej kasuje sens podrzędnej.

Na podstawie: Database Design – 2nd Edition (Adrienne Watt, Nelson Eng), CC BY 4.0.

Ćwicz w trenerze →

73

Liczność związku (kardynalność) opisuje:

  1. Liczbę indeksów w bazie
  2. Ile wystąpień jednej encji może być powiązanych z wystąpieniami drugiej
  3. Rozmiar tabeli na dysku
  4. Liczbę kolumn w tabeli
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Ile wystąpień jednej encji może być powiązanych z wystąpieniami drugiej

Typowe warianty to jeden do jednego, jeden do wielu i wiele do wielu.

Na podstawie: Database Design – 2nd Edition (Adrienne Watt, Nelson Eng), CC BY 4.0.

Ćwicz w trenerze →

74

Atrybut złożony, np. adres rozbijany na ulicę, kod i miasto, w tabeli znormalizowanej należy:

  1. Zapisać w jednej kolumnie tekstowej
  2. Zapisać jako listę oddzieloną przecinkami
  3. Przenieść do klucza głównego
  4. Rozdzielić na osobne kolumny
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. Rozdzielić na osobne kolumny

Pierwsza postać normalna wymaga wartości atomowych w każdej komórce.

Na podstawie: Database Design – 2nd Edition (Adrienne Watt, Nelson Eng), CC BY 4.0.

Ćwicz w trenerze →

75CKE · Informator INF.03 · zadanie 17

Polecenie SELECT * FROM uczniowie WHERE imie LIKE '_a%'; wybiera imiona, w których litera „a” jest znakiem:

  1. Ostatnim
  2. Przedostatnim
  3. Drugim
  4. Pierwszym
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: C. Drugim

Podkreślnik zastępuje dokładnie pierwszy znak, więc a musi być drugie.

Ćwicz w trenerze →

76CKE · Informator INF.03 · zadanie 18

Które zapytanie pobierze nazwy i kategorie dwóch kursów kończących się najwcześniej?

  1. SELECT nazwa, kategoria FROM kurs ORDER BY data_zakonczenia DESC LIMIT 2;
  2. SELECT nazwa, kategoria FROM kurs ORDER BY data_zakonczenia LIMIT 2;
  3. SELECT nazwa, kategoria FROM kurs ORDER BY data_zakonczenia DESC LIMIT 1, 2;
  4. SELECT nazwa, kategoria FROM kurs ORDER BY data_zakonczenia LIMIT 1, 2;
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. SELECT nazwa, kategoria FROM kurs ORDER BY data_zakonczenia LIMIT 2;

Domyślne sortowanie jest rosnące, a LIMIT 2 zwraca dwa pierwsze wiersze.

Ćwicz w trenerze →

77CKE · Informator INF.03 · zadanie 19

Typem SQL przechowującym wartości całkowite i zajmującym 1 bajt jest:

  1. INT
  2. MEDIUMINT
  3. SMALLINT
  4. TINYINT
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. TINYINT

W MySQL TINYINT zajmuje jeden bajt.

Ćwicz w trenerze →

78Zakres CKE · INF.03.4

Ograniczenie UNIQUE na kolumnie email zapewnia, że:

  1. Kolumna nie przyjmie wartości NULL w żadnym silniku
  2. Żadne dwie niepuste wartości email nie będą identyczne
  3. Każdy email będzie zaszyfrowany
  4. Kolumna automatycznie stanie się kluczem obcym
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Żadne dwie niepuste wartości email nie będą identyczne

UNIQUE pilnuje unikalności; zakaz NULL wymaga osobnego NOT NULL.

Ćwicz w trenerze →

79Zakres CKE · INF.03.4

Ograniczenie CHECK (cena >= 0) ma za zadanie:

  1. Utworzyć indeks na cenie
  2. Odrzucić zapis ujemnej ceny
  3. Ustawić domyślną cenę zero
  4. Automatycznie zaokrąglić cenę
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Odrzucić zapis ujemnej ceny

CHECK weryfikuje warunek podczas dodawania lub zmiany rekordu.

Ćwicz w trenerze →

80Zakres CKE · INF.03.4

Opcja ON DELETE CASCADE przy kluczu obcym powoduje:

  1. Ustawienie kluczy podrzędnych na zero
  2. Usunięcie powiązanych rekordów podrzędnych po usunięciu nadrzędnego
  3. Skopiowanie rekordu nadrzędnego
  4. Zablokowanie każdego usuwania
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Usunięcie powiązanych rekordów podrzędnych po usunięciu nadrzędnego

CASCADE przenosi operację usunięcia na rekordy zależne.

Ćwicz w trenerze →

81Zakres CKE · INF.03.4

Aby akcja ON DELETE SET NULL mogła zadziałać, kolumna klucza obcego powinna:

  1. Być typu TEXT
  2. Dopuszczać wartość NULL
  3. Być kluczem głównym
  4. Mieć AUTO_INCREMENT
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Dopuszczać wartość NULL

Baza musi móc zapisać NULL w miejscu usuniętego powiązania.

Ćwicz w trenerze →

82Zakres CKE · INF.03.4

Widok utworzony poleceniem CREATE VIEW jest:

  1. Pełną kopią danych tworzoną zawsze na dysku
  2. Zapamiętanym zapytaniem prezentowanym jak tabela
  3. Typem indeksu
  4. Kopią zapasową bazy
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Zapamiętanym zapytaniem prezentowanym jak tabela

Zwykły widok przechowuje definicję zapytania, nie osobną kopię rekordów.

Ćwicz w trenerze →

83Zakres CKE · INF.03.4

Indeks na kolumnie najczęściej:

  1. Zmniejsza rozmiar każdego rekordu
  2. Automatycznie szyfruje dane
  3. Zastępuje kopię zapasową
  4. Przyspiesza wyszukiwanie kosztem miejsca i wolniejszych modyfikacji
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. Przyspiesza wyszukiwanie kosztem miejsca i wolniejszych modyfikacji

Indeks trzeba utrzymywać przy INSERT, UPDATE i DELETE.

Ćwicz w trenerze →

84Zakres CKE · INF.03.4

Polecenie COMMIT w transakcji:

  1. Blokuje konto użytkownika
  2. Trwale zatwierdza wykonane operacje
  3. Cofa operacje
  4. Usuwa tabelę tymczasową
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Trwale zatwierdza wykonane operacje

Po COMMIT zmiany stają się zatwierdzonym stanem bazy.

Ćwicz w trenerze →

85Zakres CKE · INF.03.4

Polecenie ROLLBACK wykonane przed COMMIT:

  1. Ponownie wykonuje zapytanie
  2. Cofa niezapisane zmiany transakcji
  3. Przywraca bazę z kopii pełnej
  4. Usuwa ostatnio utworzoną tabelę
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Cofa niezapisane zmiany transakcji

ROLLBACK wycofuje operacje bieżącej transakcji.

Ćwicz w trenerze →

86Zakres CKE · INF.03.4

Funkcja COUNT(kolumna) w odróżnieniu od COUNT(*):

  1. Liczy wyłącznie wartości unikalne
  2. Zawsze zwraca mniejszy wynik
  3. Liczy tylko wartości liczbowe
  4. Nie liczy wierszy, w których kolumna ma NULL
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. Nie liczy wierszy, w których kolumna ma NULL

COUNT(kolumna) pomija NULL, a COUNT(*) liczy każdy wiersz.

Ćwicz w trenerze →

87Zakres CKE · INF.03.4

Funkcja AVG(cena) dla rekordów z wartością NULL w kolumnie cena:

  1. Traktuje NULL jak zero
  2. Zwraca zawsze NULL
  3. Pomija wartości NULL przy obliczaniu średniej
  4. Zgłasza błąd składni
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: C. Pomija wartości NULL przy obliczaniu średniej

Agregaty takie jak AVG ignorują NULL.

Ćwicz w trenerze →

88Zakres CKE · INF.03.4

Operator UNION łączący wyniki dwóch zapytań:

  1. Zachowuje wszystkie duplikaty
  2. Działa tylko na jednej kolumnie
  3. Łączy tabele według klucza obcego
  4. Usuwa powtarzające się wiersze
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. Usuwa powtarzające się wiersze

Wariant UNION ALL zachowuje duplikaty.

Ćwicz w trenerze →

89Zakres CKE · INF.03.4

Operator UNION ALL różni się od UNION tym, że:

  1. Sortuje wynik malejąco
  2. Wymaga klucza głównego
  3. Łączy kolumny zamiast wierszy
  4. Zachowuje powtarzające się wiersze
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. Zachowuje powtarzające się wiersze

Brak usuwania duplikatów może też przyspieszyć wykonanie.

Ćwicz w trenerze →

90Zakres CKE · INF.03.4

Warunek EXISTS (podzapytanie) jest prawdziwy, gdy podzapytanie:

  1. Zawiera GROUP BY
  2. Zwróci co najmniej jeden wiersz
  3. Zwróci dokładnie jedną kolumnę
  4. Nie zwróci żadnego wiersza
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Zwróci co najmniej jeden wiersz

EXISTS sprawdza istnienie wyniku, a nie jego konkretną wartość.

Ćwicz w trenerze →

91Zakres CKE · INF.03.4

Warunek cena BETWEEN 10 AND 20 obejmuje:

  1. Wartości spoza przedziału
  2. Także wartości 10 i 20
  3. Tylko wartości większe od 10 i mniejsze od 20
  4. Wyłącznie 10 i 20
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Także wartości 10 i 20

BETWEEN jest domknięty z obu stron.

Ćwicz w trenerze →

92Zakres CKE · INF.03.4

Warunek status IN ('nowe','wyslane') jest równoważny:

  1. status LIKE 'nowe%wyslane'
  2. status='nowe' OR status='wyslane'
  3. status<>'nowe'
  4. status='nowe' AND status='wyslane'
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. status='nowe' OR status='wyslane'

IN skraca serię alternatyw OR dla jednej kolumny.

Ćwicz w trenerze →

93Zakres CKE · INF.03.4

Funkcja MySQL CONCAT(imie, ' ', nazwisko) zwraca:

  1. Nazwisko bez imienia
  2. Połączone imię i nazwisko rozdzielone spacją
  3. Dwa osobne wiersze
  4. Sumę długości napisów
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Połączone imię i nazwisko rozdzielone spacją

CONCAT skleja argumenty w jeden napis.

Ćwicz w trenerze →

94Zakres CKE · INF.03.4

Funkcja MySQL DATE_FORMAT(data, '%Y-%m') służy do:

  1. Sprawdzenia poprawności daty
  2. Sformatowania daty jako rok-miesiąc
  3. Dodania miesiąca do daty
  4. Zmiany typu kolumny
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Sformatowania daty jako rok-miesiąc

DATE_FORMAT zamienia datę na napis według podanego wzorca.

Ćwicz w trenerze →

95Zakres CKE · INF.03.4

W porównaniu z CHAR typ VARCHAR:

  1. Zawsze zajmuje dokładnie zadany rozmiar
  2. Przechowuje tekst o zmiennej długości
  3. Przechowuje wyłącznie cyfry
  4. Nie pozwala określić długości maksymalnej
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Przechowuje tekst o zmiennej długości

CHAR ma długość stałą, VARCHAR przechowuje długość rzeczywistej wartości.

Ćwicz w trenerze →

96Zakres CKE · INF.03.4

Złożony klucz główny w tabeli pośredniczącej może składać się z:

  1. Wyłącznie jednej kolumny AUTO_INCREMENT
  2. Kolumny tekstowej bez ograniczeń
  3. Dwóch kluczy obcych razem
  4. Dwóch wartości NULL
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: C. Dwóch kluczy obcych razem

Para identyfikatorów może jednoznacznie wskazywać powiązanie wiele-do-wielu.

Ćwicz w trenerze →

97Zakres CKE · INF.03.4

Trzecia postać normalna (3NF) eliminuje przede wszystkim:

  1. Wszystkie klucze obce
  2. Każdą relację wiele-do-wielu
  3. Indeksy złożone
  4. Zależności przechodnie atrybutów niekluczowych od klucza
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. Zależności przechodnie atrybutów niekluczowych od klucza

Atrybut niekluczowy nie powinien zależeć od innego atrybutu niekluczowego.

Ćwicz w trenerze →

Zadania rachunkowe i kodowe (24)

Każde zadanie ma 25 wariantów z innymi liczbami. Poniżej po jednym przykładzie — w trenerze wylosujesz kolejne, aż opanujesz sam mechanizm.

98Zakres CKE · INF.03.4

Tabela ma 42 rekordów, z czego 5 spełnia warunek aktywny=1. Co zwróci SELECT COUNT(*) FROM konta WHERE aktywny=1;?

  1. 42
  2. 5
  3. 37
  4. 6
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. 5

COUNT(*) liczy wyłącznie wiersze pozostawione przez WHERE, czyli 5.

Ćwicz w trenerze →

99Zakres CKE · INF.03.4

Rekordy mają identyfikatory od 1 rosnąco. Jaki będzie pierwszy identyfikator po wykonaniu SELECT id FROM wpisy ORDER BY id LIMIT 0, 6;?

  1. 2
  2. 7
  3. 8
  4. 1
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. 1

Pierwsza liczba w LIMIT oznacza liczbę pominiętych wierszy, więc pierwszy wynik ma id 1.

Ćwicz w trenerze →

100Zakres CKE · INF.03.4

Pole cena ma wartość 560. Jaką wartość zapisze UPDATE produkty SET cena=cena*1.50 WHERE id=7;?

  1. 841
  2. 840
  3. 839
  4. 842
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. 840

Mnożnik podnosi cenę o 50%, więc nowa wartość wynosi 840.

Ćwicz w trenerze →

101Zakres CKE · INF.03.4

Kolumna punkty zawiera wartości 26, 28, 30, 32. Co zwróci SELECT AVG(punkty) FROM wyniki;?

  1. 116
  2. 29
  3. 28
  4. 30
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. 29

AVG dzieli sumę czterech wartości przez 4; wynik to 29.

Ćwicz w trenerze →

102Zakres CKE · INF.03.4

Po GROUP BY dwie kategorie mają odpowiednio 1 i 8 rekordów. Ile grup zwróci warunek HAVING COUNT(*) > 5?

  1. 14
  2. 4
  3. 1
  4. 3
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: C. 1

HAVING pozostawia tylko grupy o liczności większej niż 5, więc wynik zawiera 1 grup.

Ćwicz w trenerze →

103Zakres CKE · INF.03.4

Który kod zwróci warunek kod LIKE '_Y%'?

  1. YZ34
  2. BX34
  3. ZQ34
  4. ZY34
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. ZY34

Podkreślnik zastępuje pierwszy dowolny znak, a drugi znak musi być literą Y.

Ćwicz w trenerze →

104Zakres CKE · INF.03.4

Tabela liczby zawiera po jednym rekordzie dla każdej liczby całkowitej od 1 do 100. Ile rekordów zwróci SELECT * FROM liczby WHERE wartosc BETWEEN 27 AND 32;?

  1. 5
  2. 59
  3. 6
  4. 7
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: C. 6

BETWEEN obejmuje obie wartości graniczne, dlatego liczba rekordów wynosi 32 − 27 + 1 = 6.

Ćwicz w trenerze →

105Zakres CKE · INF.03.4 · wariant autorski

Kolumna kwota zawiera wartości 26, 29 i 33. Co zwróci SELECT SUM(kwota) FROM platnosci;?

  1. 33
  2. 3
  3. 88
  4. 87
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: C. 88

SUM dodaje wszystkie wartości kolumny, więc wynik wynosi 88.

Ćwicz w trenerze →

106Zakres CKE · INF.03.4 · wariant autorski

Kolumna czas zawiera wartości 33, 26 i 29. Co zwróci SELECT MIN(czas) FROM proby;?

  1. 88
  2. 26
  3. 29
  4. 33
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. 26

MIN wybiera najmniejszą wartość, czyli 26.

Ćwicz w trenerze →

107Zakres CKE · INF.03.4 · wariant autorski

Kolumna wynik zawiera wartości 26, 33 i 29. Co zwróci SELECT MAX(wynik) FROM testy;?

  1. 26
  2. 29
  3. 88
  4. 33
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. 33

MAX wybiera największą wartość, czyli 33.

Ćwicz w trenerze →

108Zakres CKE · INF.03.4 · wariant autorski

Kolumna kod zawiera wartości A24, A24, B24, C24, C24. Ile wierszy zwróci SELECT DISTINCT kod FROM dane;?

  1. 2
  2. 5
  3. 3
  4. 1
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: C. 3

DISTINCT usuwa powtórzenia; pozostają trzy różne kody.

Ćwicz w trenerze →

109Zakres CKE · INF.03.4 · wariant autorski

Tabela zawiera wszystkie identyfikatory od 1 do 64. Ile rekordów zwróci WHERE id IN (26,28,30)?

  1. 0
  2. 3
  3. 2
  4. 64
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. 3

Operator IN sprawdza trzy różne, istniejące identyfikatory, więc zwrócone zostaną 3 rekordy.

Ćwicz w trenerze →

110Zakres CKE · INF.03.4 · wariant autorski

Tabela ma wartości całkowite od 1 do 74. Ile rekordów spełni wartosc NOT BETWEEN 29 AND 34?

  1. 6
  2. 68
  3. 74
  4. 69
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. 68

BETWEEN obejmuje obie granice, więc od 74 rekordów odejmuje się 6.

Ćwicz w trenerze →

111Zakres CKE · INF.03.4 · wariant autorski

Tabela ma 54 rekordów. Warunek w poleceniu DELETE spełnia 4 rekordów. Ile rekordów pozostanie po wykonaniu polecenia?

  1. 54
  2. 4
  3. 58
  4. 50
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. 50

DELETE usuwa tylko rekordy spełniające WHERE, więc pozostaje 50.

Ćwicz w trenerze →

112Zakres CKE · INF.03.4 · wariant autorski

W tabeli jest 54 rekordów, a 4 z nich spełnia warunek status=0. Ile rekordów zmodyfikuje UPDATE zadania SET status=1 WHERE status=0;?

  1. 54
  2. 4
  3. 1
  4. 50
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. 4

UPDATE modyfikuje każdy rekord spełniający warunek, czyli 4 rekordów.

Ćwicz w trenerze →

113Zakres CKE · INF.03.4 · wariant autorski

W rekordzie cena wynosi 34, a ilosc 6. Co zwróci wyrażenie SELECT cena*ilosc AS wartosc?

  1. 40
  2. 6
  3. 34
  4. 204
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. 204

Operator * mnoży wartości obu kolumn: wynik to 204.

Ćwicz w trenerze →

114Zakres CKE · INF.03.4 · wariant autorski

Kolumna ocena zawiera 29, 30 i 33. Co zwróci SELECT ROUND(AVG(ocena),1) FROM wyniki;?

  1. 92
  2. 31,7
  3. 30,7
  4. 30
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: C. 30,7

AVG oblicza średnią, a ROUND zaokrągla ją do jednego miejsca: 30,7.

Ćwicz w trenerze →

115Zakres CKE · INF.03.4 · wariant autorski

Tabela zamowienia ma 36 rekordów, w tym 1 bez pasującego klienta. Ile wierszy zwróci INNER JOIN z tabelą klienci?

  1. 34
  2. 36
  3. 35
  4. 37
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: C. 35

INNER JOIN zachowuje wyłącznie rekordy mające dopasowanie, więc zwraca 35 wierszy.

Ćwicz w trenerze →

116Zakres CKE · INF.03.4 · wariant autorski

Tabela autorzy ma 30 rekordów. Każdy autor ma jedną książkę, a pierwszy ma jeszcze dodatkowe książki w liczbie 5. Ile wierszy zwróci LEFT JOIN autorów z książkami?

  1. 34
  2. 36
  3. 37
  4. 35
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. 35

Każdy autor daje co najmniej jeden wiersz, a dodatkowe książki tworzą 5 kolejnych, razem 35.

Ćwicz w trenerze →

117Zakres CKE · INF.03.4 · wariant autorski

W 64 rekordach występuje dokładnie 6 różnych kategorii. Ile wierszy zwróci SELECT kategoria, COUNT(*) FROM dane GROUP BY kategoria;?

  1. 64
  2. 6
  3. 1
  4. 58
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. 6

GROUP BY tworzy po jednym wierszu wyniku dla każdej różnej kategorii, czyli 6.

Ćwicz w trenerze →

118Zakres CKE · INF.03.4 · wariant autorski

Kolumna imie zawiera: Ala24, Adam24, Bianka24, Aneta24. Ile rekordów spełni imie LIKE 'A%'?

  1. 2
  2. 3
  3. 1
  4. 4
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. 3

Wzorzec A% oznacza dowolny napis zaczynający się literą A; pasują trzy wartości.

Ćwicz w trenerze →

119Zakres CKE · INF.03.4 · wariant autorski

Kolumna plik zawiera: plan24.png, foto24.jpg, ikona24.png, dane24.txt. Ile rekordów spełni plik LIKE '%.png'?

  1. 1
  2. 3
  3. 4
  4. 2
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. 2

Procent zastępuje dowolny początek nazwy, a rozszerzenie .png mają dwa pliki.

Ćwicz w trenerze →

120Zakres CKE · INF.03.4 · wariant autorski

Tabela ma 44 rekordów, a pole telefon ma wartość NULL w 2 z nich. Co zwróci SELECT COUNT(*) FROM osoby WHERE telefon IS NULL;?

  1. 42
  2. 2
  3. 44
  4. 0
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. 2

Warunek IS NULL wybiera dokładnie rekordy bez wartości telefonu, czyli 2.

Ćwicz w trenerze →

121Zakres CKE · INF.03.4 · wariant autorski

Każdy rekord tabeli ksiazka_25 wskazuje dokładnie jednego autora, a rekord tabeli autor_25 może być wskazany przez wiele książek. Jaka jest relacja od autora do książek?

  1. wiele do wielu
  2. wiele do jednego
  3. jeden do jednego
  4. jeden do wielu
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. jeden do wielu

Jeden autor może mieć wiele książek, natomiast każda książka wskazuje jednego autora.

Ćwicz w trenerze →

To dopiero część pisemna

Do certyfikatu trzeba też części praktycznej — i tam EasyINF robi różnicę.

Roadmapa od zera, 152 arkusze CKE z rozwiązaniami, warsztat, który sprawdza Twój kod krok po kroku, i próbny egzamin na 150 minut. Jedna platforma, płacisz raz.

Zobacz pełny kurs INF.03