Spustený test: Jazyk SQL - komplexný Vyplnené otázky: 0 z 36 otázok 1. Ktoré z uvedených príkazov sa spustia a nevrátia nám chybu? SELECT nazov_sk AS "Nazov statu", kod AS Kod FROM krajiny AS kr SELECT nazov_sk AS Nazov statu, kod AS Kod FROM krajiny AS kr SELECT nazov_sk AS Nazov_statu, kod AS Kod FROM krajiny AS "kr" SELECT nazov_sk AS 'Nazov statu', kod AS Kod FROM krajiny AS kr 2. Ktoré z príkazov vrátia troch zamestnancov s najvyšším platom? SELECT TOP (3) meno_zamestnanca, plat FROM zamestnanci SELECT TOP (3) meno_zamestnanca, plat FROM zamestnanci ORDER BY plat SELECT TOP (3) meno_zamestnanca, plat FROM zamestnanci ORDER BY plat ASC SELECT TOP (3) meno_zamestnanca, plat FROM zamestnanci ORDER BY plat DESC 3. Ktoré z príkazov nám vypíšu všetko z tabuľky krajiny? SEleCT * FROM krajiny; Select * FROM krajiny Select ALL FROM krajiny; SeLEct ALL from krajiny; 4. Čo vypíše príkaz: SELECT meno_zamestnanca, plat, z.plat+100 FROM zamestnanci Meno zamestnanca a jeho plat Meno zamestnanca a jeho plat zvýšený o 100 eur Meno zamestnanca, jeho plat a jeho plat zvýšený o 100 eur Meno zamestnanca, jeho plat, znova jeho plat a číslo 100 5. Ktorý príkaz zmení definíciu tabuľky LOCATIONS a vymaže stĺpec mesto? MODIFY TABLE locations DROP (mesto) ALTER TABLE locations DROP (mesto) ALTER TABLE locations DROP COLUMN mesto MODIFY TABLE locations DROP (mesto varchar2(30)) 6. Ktoré z príkazov vrátia z tabuľky krajiny stĺpec nazov_sk a stĺpec kod_mena. Ak je stĺpec kod_mena prázdny, nahradí ho textom: „Nie je vyplnene“ SELECT nazov_sk, SUBSTRING(kod_mena,'Nie je vyplnena') FROM krajiny SELECT nazov_sk, COALESCE(IF kod_mena = NULL,'Nie je vyplnena') FROM krajiny SELECT nazov_sk, COALESCE(kod_mena,'Nie je vyplnena') FROM krajiny SELECT nazov_sk, COALESCE(IF kod_mena IS NULL THEN 'Nie je vyplnena') FROM krajiny 7. Ktoré z nasledujúcich príkazov vrátia takýto výsledok: SELECT meno_zamestnanca, plat, CASE WHEN plat<1001 THEN 'Nizky plat' ELSE WHEN plat>1000 AND plat<2001 THEN 'Priemerny plat' ELSE 'Velmi vysoky plat' END FROM zamestnanci SELECT meno_zamestnanca, plat, CASE WHEN plat>1001 THEN 'Nizky plat' WHEN plat>1000 AND plat<2001 THEN 'Priemerny plat' ELSE 'Velmi vysoky plat' END FROM zamestnanci SELECT meno_zamestnanca, plat, CASE WHEN plat<1001 THEN 'Nizky plat' ELSE WHEN plat<1000 AND plat<2001 THEN 'Priemerny plat' ELSE 'Velmi vysoky plat' END FROM zamestnanci SELECT meno_zamestnanca, plat, CASE WHEN plat<1001 THEN 'Nizky plat' WHEN plat>1000 AND plat<2001 THEN 'Priemerny plat' ELSE 'Velmi vysoky plat' END FROM zamestnanci 8. Ktoré z príkazov nám vypíšu polia nazov_sk a kod z tabuľky krajiny? SELECT FROM krajiny COLUMNS nazov_sk, kod SELECT 'nazov_sk', 'kod' FROM 'krajiny' SELECT nazov_sk, kod FROM krajiny SELECT krajiny (nazov_sk, kod) 9. Ktoré z príkazov vrátia kartézsky súčin tabuliek krajiny a kontinent? Čiže všetky kombinácie záznamov? SELECT * FROM krajiny AS kr CROSS JOIN kontinent AS k SELECT * FROM krajiny as kr, kontinent as ko WHERE kr.id_kontinent=ko.id_kontinent SELECT * FROM krajiny, kontinent SELECT * FROM krajiny AS kr FULL JOIN kontinent AS k 10. Čo vráti príkaz: SELECT CONVERT(int, 10.57) 11 57 10,57 10 11. Čo vráti príkaz: SELECT DATEDIFF(DAY, '2016-01-01', '2017-01-01') 366 12 Skončí s chybou 1 12. Ktorý príkaz patrí do skupiny DDL (definícia štruktúr): GRANT SELECT CREATE COMMIT 13. Ktoré z príkazov zoradia záznamy podľa stĺpca nazov_sk? SELECT nazov_sk, nazov_en FROM krajiny ORDER BY 2 SELECT nazov_sk, nazov_en FROM krajiny ORDER BY nazov_en SELECT nazov_sk, nazov_en FROM krajiny ORDER BY nazov_sk SELECT nazov_sk, nazov_en FROM krajiny ORDER BY 1 14. Čo vráti príkaz: SELECT * FROM krajiny WHERE id_mena IS NULL Skončí s chybou Všetko z tabuľky krajiny, kde pole id_mena má hodnotu nula Všetko z tabuľky krajiny, kde pole id_mena je prázdne Všetko z tabuľky krajiny 15. Ktoré z príkazov vrátia všetko z tabuľky krajiny a k nej údaje z tabuľky eu, ak sa v tabuľke eu krajina nachádza? SELECT * FROM eu AS e FULL JOIN krajiny AS k ON k.id_krajina=e.id_krajina SELECT * FROM eu AS e RIGHT JOIN krajiny AS k ON k.id_krajina=e.id_krajina SELECT * FROM eu AS e LEFT JOIN krajiny AS k ON k.id_krajina=e.id_krajina SELECT * FROM eu AS e CROSS JOIN krajiny AS k ON k.id_krajina=e.id_krajina 16. Ktoré z príkazov skončia chybou? SELECT * FROM krajiny as kr, kontinent as ko WHERE kr.id_kontinent=ko.id_kontinent SELECT * FROM krajiny as kr INNER JOIN kontinent AS ko ON kr.id_kontinent = ko.id_kontinent SELECT * FROM krajiny, kontinent WHERE krajiny.id_kontinent=kontinent.id_kontinent SELECT * FROM krajiny INNER JOIN kontinent ON id_kontinent=id_kontinent 17. Ktoré z uvedených tvrdení nie je správne: Použitie relácie 1:1 by sa dalo obísť zlúčením údajov do jednej tabuľky. Databázová relácia typu 1:1 znamená, že jednému riadku jednej tabuľky odpovedá niekoľko riadkov druhej tabuľky. Databázová relácia typu 1:1 znamená že každému záznamu (riadku) v jednej tabuľke je priradený práve jeden záznam (riadok) v druhej tabuľke. Databázové relácie typu 1:1 sa nepoužívajú veľmi často a v mnohých prípadoch ich použitie svedčí o nesprávnom navrhnutí databázy. 18. Ktoré z príkazov nám vypíšu priezvisko študenta s krstným menom Martin? SELECT priezvisko FROM studenti WHERE meno IS Martin SELECT priezvisko FROM studenti WHERE meno='Martin' SELECT priezvisko FROM studenti WHERE meno=Martin SELECT priezvisko FROM studenti 19. Ktoré z príkazov skončia chybou? SELECT * FROM krajiny as kr INNER JOIN kontinent AS ko ON kr.id_kontinent = ko.id_kontinent SELECT * FROM krajiny, kontinent WHERE krajiny.id_kontinent=kontinent.id_kontinent SELECT * FROM krajiny as kr, kontinent as ko WHERE kr.id_kontinent=ko.id_kontinent SELECT * FROM krajiny INNER JOIN kontinent ON id_kontinent=id_kontinent 20. Ktoré z príkazov vrátia z tabuľky krajiny stĺpec nazov_sk a stĺpec kod_mena. Ak je stĺpec kod_mena prázdny, nahradí ho textom „Nie je vyplnene“ SELECT nazov_sk, COALESCE(kod_mena,'Nie je vyplnena') FROM krajiny SELECT nazov_sk, COALESCE(IF kod_mena = NULL,'Nie je vyplnena') FROM krajiny SELECT nazov_sk, SUBSTRING(kod_mena,'Nie je vyplnena') FROM krajiny SELECT nazov_sk, COALESCE(IF kod_mena IS NULL THEN 'Nie je vyplnena') FROM krajiny 21. Ktorý príkaz patrí do skupiny práce s transakciami: ALTER GRANT ROLLBACK HAVING 22. Ktorý príkaz zmení definíciu tabuľky LOCATIONS a vymaže stĺpec mesto? MODIFY TABLE locations DROP (mesto varchar2(30)) MODIFY TABLE locations DROP (mesto) ALTER TABLE locations DROP COLUMN mesto ALTER TABLE locations DROP (mesto) 23. Akým príkazom dostaneme z nasledujúcej tabuľky k menu zamestnanca meno jeho vedúceho? SELECT z1.meno_zamestnanca, z2.meno_zamestnanca FROM zamestnanci AS z1 LEFT JOIN zamestnanci AS z2 ON z2.id=z1.nadriadeny SELECT z1.meno_zamestnanca, z2.meno_zamestnanca FROM zamestnanci AS z1 CROSS JOIN zamestnanci AS z2 ON z2.id=z1.nadriadeny SELECT z1.meno_zamestnanca, z2.meno_zamestnanca FROM zamestnanci AS z1 LEFT JOIN zamestnanci AS z2 ON z2.nadriadeny=z1.nadriadeny SELECT z1.meno_zamestnanca, z2.meno_zamestnanca FROM zamestnanci AS z1 LEFT JOIN zamestnanci AS z2 ON z2.id=z1.id 24. Ktorý príkaz patrí do skupiny nastavovania prístupových práv: CREATE REVOKE COMMIT ROLLBACK 25. Ktorý z nasledujúcich príkazov vypíše chybu? SELECT oddelenie, zamestnanec, AVG(mzda) FROM zamestnanci GROUP BY oddelenie, zamestnanec SELECT oddelenie, zamestnanec, AVG(mzda) FROM zamestnanci GROUP BY mzda SELECT AVG(mzda) FROM zamestnanci GROUP BY oddelenie SELECT oddelenie, AVG(mzda) FROM zamestnanci GROUP BY oddelenie 26. Aké hodnoty pridelí príkaz vytvorenia tabuľky: CREATE TABLE student (id int not null,meno varchar(20), priezvisko varchar (40)) Stĺpec id je desatinné číslo a nesmie byť prázdny, stĺpce meno aj priezvisko sú textové. Stĺpec id je celočíselný a nesmie byť prázdny, stĺpce meno aj priezvisko sú textové. Stĺpce id, meno aj priezvisko sú textové. Stĺpec id je celočíselný a môže byť prázdny, stĺpce meno aj priezvisko sú textové. 27. Ktorý príkaz patrí do skupiny DDL (definícia štruktúr): HAVING GRANT GROUP BY CREATE 28. Ktoré z príkazov vrátia prvých 10 štátov podľa abecedy? SELECT TOP(10) nazov_sk FROM krajiny ORDER BY nazov_sk SELECT 10 nazov_sk FROM krajiny ORDER BY nazov_sk SELECT TOP FIRST 10 nazov_sk FROM krajiny ORDER BY nazov_sk SELECT TOP 10 nazov_sk FROM krajiny ORDER BY nazov_sk 29. Na čo slúži nasledujúci spúšťač (TRIGGER)? Príkaz skončí s chybou Po zmazaní hodnoty z tabuľky mena vypíše „Zaznam bol pridany“ Po zmazaní hodnoty z tabuľky mena zálohuje hodnoty Po vložení novej hodnoty do tabuľky mena vypíše „Zaznam bol pridany“ 30. Čo spraví procedúra zvysenie_platu po spustení? Odráta z platu každého zamestnanca 10 eur Zvýši plat každého zamestnanca o 10% Priráta k platu každého zamestnanca 10 eur Zníži plat každého zamestnanca o 10% 31. Akou funkciu vieme transformovať hodnoty zo stĺpcov do riadkov? CONTINGENT JOIN PIVOT UNPIVOT 32. Aké zjednotenia nám ponúka nasledujúci SELECT? Vypíše iba celkovú cenu za všetko Podľa názvu a kategórie a iba podľa kategórie Podľa názvu a kategórie, iba podľa kategórie plus vypíše celkovú cenu za všetko Podľa názvu a kategórie 33. Ktorý príkaz nepatrí do skupiny DML (príkazy pre manipuláciu s dátami): DELETE ORDER BY INSERT ROLLBACK 34. Ktorý príkaz slúži na rozdiel (odčítanie) dvoch SELECTov? ALL INTERSECT EXCEPT UNION 35. Ktoré z príkazov vrátia všetko z tabuľky krajiny a k nej údaje z tabuľky eu, ak sa v tabuľke eu krajina nachádza? SELECT * FROM eu AS e FULL JOIN krajiny AS k ON k.id_krajina=e.id_krajina SELECT * FROM eu AS e RIGHT JOIN krajiny AS k ON k.id_krajina=e.id_krajina SELECT * FROM eu AS e CROSS JOIN krajiny AS k ON k.id_krajina=e.id_krajina SELECT * FROM eu AS e LEFT JOIN krajiny AS k ON k.id_krajina=e.id_krajina 36. Ktorá funkcia slúži pre sekvenčné číslovanie (pre číslo riadku) OVER ORDER ROW_NUMBER FETCH Odoslať a vyhodnotiť test