top 90 sql interview questions
90 najpopulárnejších otázok a odpovedí na pohovory SQL:
Toto sú najbežnejšie a najužitočnejšie otázky na pohovoroch SQL pre nováčikov aj pre skúsených kandidátov. V tomto článku sa venujeme základom až pokročilým konceptom SQL.
Predtým, ako sa dostavíte na pohovor, pozrite si v týchto otázkach rýchlu revíziu hlavných konceptov SQL.
Najlepšie otázky týkajúce sa rozhovorov s SQL
Začnime.
Otázka č. 1) Čo je to SQL?
Odpoveď: Structured Query Language SQL je databázový nástroj, ktorý sa používa na vytváranie a prístup k databáze na podporu softvérových aplikácií.
Otázka 2) Čo sú tabuľky v SQL?
Odpoveď: Tabuľka je súborom záznamu a jeho informácií v jednom zobrazení.
Otázka č. 3) Aké sú rôzne typy príkazov, ktoré podporuje SQL?
Odpoveď:
Existujú 3 typy príkazov SQL:
a) DDL (Data Definition Language): Používa sa na definovanie štruktúry databázy, ako sú napríklad tabuľky. Zahŕňa tri príkazy ako CREATE, ALTER a DROP.
Prečítajte si tiež = >> Výukový program pre vytvorenie tabuľky MySQL
Niektoré z príkazov DDL sú uvedené nižšie:
VYTVORIŤ : Používa sa na vytvorenie tabuľky.
CREATE TABLE table_name column_name1 data_type(size), column_name2 data_type(size), column_name3 data_type(size),
VEK: Tabuľka ALTER sa používa na úpravu existujúceho objektu tabuľky v databáze.
ALTER TABLE table_name ADD column_name datatype
ALEBO
ALTER TABLE table_name DROP COLUMN column_name
b) DML (Data Manipulation Language): Tieto vyhlásenia sa používajú na manipuláciu s údajmi v záznamoch. Bežne používané príkazy DML sú INSERT, UPDATE a DELETE.
Príkaz SELECT sa používa ako čiastočný príkaz DML, ktorý sa používa na výber všetkých alebo príslušných záznamov v tabuľke.
c) DCL (Data Control Language): Tieto príkazy sa používajú na nastavenie privilégií, ako sú povolenia prístupu k databáze GRANT a REVOKE, konkrétnemu používateľovi .
Otázka č. 4) Ako použijeme príkaz DISTINCT? Aké je jeho použitie?
Odpoveď: Príkaz DISTINCT sa používa s príkazom SELECT. Ak záznam obsahuje duplicitné hodnoty, potom sa na výber rôznych hodnôt medzi duplicitnými záznamami použije príkaz DISTINCT.
Syntax:
SELECT DISTINCT column_name(s) FROM table_name;
Otázka č. 5) Aké sú rôzne klauzuly použité v SQL?
Odpoveď:
KDE Doložka: Táto klauzula sa používa na definovanie podmienky, extrakciu a zobrazenie iba tých záznamov, ktoré spĺňajú danú podmienku.
java základné otázky a odpovede na pohovor
Syntax:
SELECT column_name(s) FROM table_name WHERE condition;
Klauzula GROUP BY: Používa sa s príkazom SELECT na zoskupenie výsledku vykonaného dotazu pomocou hodnoty v ňom uvedenej. Zhoduje sa s hodnotou stĺpca v tabuľkách a podľa toho sa zoskupuje konečný výsledok.
Ďalšie čítanie => Výukový program pre skupinu MySQL
Syntax:
SELECT column_name(s) FROM table_name GROUP BY column_name;
Klauzula HAVING: Táto klauzula sa používa v spojení s klauzulou GROUP BY. Aplikuje sa na každú skupinu výsledkov alebo na celý výsledok ako jedna skupina. Je veľmi podobný klauzule WHERE, ale jediný rozdiel je, že ju nemôžete použiť bez klauzuly GROUP BY
Syntax:
SELECT column_name(s) FROM table_name GROUP BY column_name HAVING condition;
Klauzula ORDER BY: Táto klauzula sa používa na definovanie poradia výstupu dotazu buď vzostupne (ASC), alebo zostupne (DESC). Vzostupne (ASC) je nastavený ako predvolený, ale zostupne (DESC) je nastavený explicitne.
Syntax:
SELECT column_name(s) FROM table_name WHERE condition ORDER BY column_name ASC|DESC;
Klauzula POUŽÍVANIE: Klauzula USING sa používa pri práci s SQL JOIN. Používa sa na kontrolu rovnosti na základe stĺpcov, keď sú tabuľky spojené. Môže byť použitý namiesto klauzuly ON v JOIN.
Syntax:
SELECT column_name(s) FROM table_name JOIN table_name USING (column_name);
Otázka č. 6) Prečo používame obmedzenia SQL? Ktoré obmedzenia môžeme použiť pri vytváraní databázy v SQL?
Odpoveď: Obmedzenia sa používajú na nastavenie pravidiel pre všetky záznamy v tabuľke. Ak dôjde k porušeniu akýchkoľvek obmedzení, môže to prerušiť činnosť, ktorá to spôsobila.
Obmedzenia sú definované pri vytváraní samotnej databázy príkazom CREATE TABLE alebo dokonca po jednorazovom vytvorení tabuľky príkazom ALTER TABLE.
Existuje 5 hlavných obmedzení používaných v SQL, ako napr
- NIE NULL: To naznačuje, že stĺpec musí mať určitú hodnotu a nemôže byť ponechaný NULL.
- JEDINEČNÉ: Toto obmedzenie sa používa na zabezpečenie toho, aby každý riadok a stĺpec mal jedinečnú hodnotu a aby sa žiadna hodnota neopakovala v žiadnom inom riadku alebo stĺpci.
- PRIMÁRNY KĽÚČ: Toto obmedzenie sa používa v spojení s obmedzeniami NOT NULL a UNIQUE, ako napríklad v jednom alebo kombináciou viac ako jedného stĺpca, na identifikáciu konkrétneho záznamu s jedinečnou identitou.
- CUDZÍ KĽÚČ: Používa sa na zabezpečenie referenčnej integrity údajov v tabuľke. Zodpovedá hodnote v jednej tabuľke s druhou pomocou PRIMÁRNEHO KLÍČA.
- SKONTROLUJTE: Zaisťuje, či hodnota v stĺpcoch spĺňa zadanú podmienku.
Otázka č. 7) Aké sú rôzne PRIPOJENIA použité v SQL?
Odpoveď:
Pri práci na viacerých tabuľkách v databázach SQL sa používajú 4 hlavné typy spojení:
VNÚTORNÉ PRIPOJENIE: Je tiež známy ako SIMPLE JOIN, ktorý vracia všetky riadky z OBSAHOVÝCH tabuliek, ak má aspoň jeden zodpovedajúci stĺpec.
Syntax:
SELECT column_name(s) FROM table_name1 INNER JOIN table_name2 ON column_name1=column_name2;
Napríklad,
V tomto príklade máme tabuľku Zamestnanec s nasledujúcimi údajmi:
Názov druhej tabuľky je Pripojenie sa.
Zadajte nasledujúci príkaz SQL:
SELECT Employee.Emp_id, Joining.Joining_Date FROM Employee INNER JOIN Joining ON Employee.Emp_id = Joining.Emp_id ORDER BY Employee.Emp_id;
Budú vybrané 4 záznamy. Výsledky sú:
Zamestnanec a Objednávky tabuľky majú zhodu customer_id hodnotu.
LEFT JOIN (LEFT OUTER JOIN): Toto spojenie vráti všetky riadky z ľavej tabuľky a jej zhodné riadky z pravej tabuľky .
Syntax:
SELECT column_name(s) FROM table_name1 LEFT JOIN table_name2 ON column_name1=column_name2;
Napríklad,
V tomto príklade máme tabuľku Zamestnanec s nasledujúcimi údajmi:
Názov druhej tabuľky je Pripojenie sa.
Zadajte nasledujúci príkaz SQL:
SELECT Employee.Emp_id, Joining.Joining_Date FROM Employee LEFT OUTER JOIN Joining ON Employee.Emp_id = Joining.Emp_id ORDER BY Employee.Emp_id;
Budú vybrané 4 záznamy. Uvidíte nasledujúce výsledky:
PRAVÉ SPOJENIE (PRAVÉ VONKAJŠIE SPOJENIE): Toto spojenie vráti všetky riadky z PRAVEJ tabuľky a jej zhodné riadky z ľavej tabuľky .
Syntax:
SELECT column_name(s) FROM table_name1 RIGHT JOIN table_name2 ON column_name1=column_name2;
Napríklad,
V tomto príklade máme tabuľku Zamestnanec s nasledujúcimi údajmi:
Názov druhej tabuľky je Pripojenie sa.
Zadajte nasledujúci príkaz SQL:
SELECT Employee.Emp_id, Joining.Joining_Date FROM Employee RIGHT JOIN Joining ON Employee.Emp_id = Joining.Emp_id ORDER BY Employee.Emp_id;
Výkon:
Emp_id | Dátum pripojenia |
---|---|
E0012 | 2016/04/18 |
E0013 | 2016/04/19 |
E0014 | 2016/05/01 |
PLNÝ SPOJ (PLNÝ VONKAJŠÍ SPOJ): Ak sa vyskytne zhoda v PRAVEJ alebo v ĽAVEJ tabuľke, toto spojenie vráti všetky výsledky .
Syntax:
SELECT column_name(s) FROM table_name1 FULL OUTER JOIN table_name2 ON column_name1=column_name2;
Napríklad,
V tomto príklade máme tabuľku Zamestnanec s nasledujúcimi údajmi:
Názov druhej tabuľky je Pripojenie sa.
Zadajte nasledujúci príkaz SQL:
SELECT Employee.Emp_id, Joining.Joining_Date FROM Employee FULL OUTER JOIN Joining ON Employee.Emp_id = Joining.Emp_id ORDER BY Employee.Emp_id;
Bude vybraných 8 záznamov. Toto sú výsledky, ktoré by ste mali vidieť.
TO Prečítajte si tiež> Výukový program pre pripojenie k MySQL
Otázka č. 8) Čo sú to transakcie a ich kontroly?
Odpoveď: Transakciu možno definovať ako úlohu sekvencie, ktorá sa vykonáva v databázach logickým spôsobom, aby sa dosiahli určité výsledky. Operácie ako vytváranie, aktualizácia a mazanie záznamov vykonaných v databáze pochádzajú z transakcií.
Jednoduchými slovami môžeme povedať, že transakcia znamená skupinu SQL dotazov vykonávaných na databázových záznamoch.
K dispozícii sú 4 kontroly transakcií ako napr
- POVINNOSŤ : Používa sa na uloženie všetkých zmien vykonaných prostredníctvom transakcie.
- ROLLBACK : Používa sa na vrátenie transakcie späť. Všetky zmeny vykonané transakciou sa vrátia späť a databáza zostane ako predtým.
- NASTAVTE TRANSAKCIU : Nastaví názov transakcie.
- SAVEPOINT: Používa sa na nastavenie bodu, v ktorom sa má transakcia vrátiť späť.
Otázka č. 9) Aké sú vlastnosti transakcie?
Odpoveď: Vlastnosti transakcie sú známe ako vlastnosti ACID. Sú to:
- Atomicita : Zaisťuje úplnosť všetkých vykonaných transakcií. Kontroluje, či je každá transakcia úspešne dokončená alebo nie. Ak nie, potom sa transakcia v bode zlyhania zruší a predchádzajúca transakcia sa vráti späť do pôvodného stavu, pretože zmeny sa vrátia späť.
- Dôslednosť : Zaisťuje, aby sa všetky zmeny vykonané prostredníctvom úspešných transakcií správne prejavili v databáze.
- Izolácia : Zaisťuje, že všetky transakcie sa vykonávajú nezávisle a zmeny vykonané jednou transakciou sa neprejavia v ostatných.
- Trvanlivosť : Zaisťuje, aby zmeny vykonané v databáze s potvrdenými transakciami pretrvávali, a to aj po zlyhaní systému.
Otázka č. 10) Koľko agregačných funkcií je k dispozícii v SQL?
Odpoveď: Funkcie SQL Aggregate určujú a vypočítavajú hodnoty z viacerých stĺpcov v tabuľke a vracajú jednu hodnotu.
V SQL je 7 agregačných funkcií:
- AVG (): Vráti priemernú hodnotu zo zadaných stĺpcov.
- COUNT (): Vráti počet riadkov tabuľky.
- MAX (): Vráti najväčšiu hodnotu medzi záznamami.
- MIN (): Vráti najmenšiu hodnotu medzi záznamami.
- SUM (): Vráti súčet zadaných hodnôt stĺpca.
- NAJPRV(): Vráti prvú hodnotu.
- POSLEDNÉ (): Vráti poslednú hodnotu.
Otázka č. 11) Čo sú to skalárne funkcie v SQL?
Odpoveď: Skalárne funkcie sa používajú na vrátenie jednej hodnoty na základe vstupných hodnôt.
Skalárne funkcie sú nasledujúce:
- UCASE (): Skonvertuje zadané pole na veľké písmená.
- LCASE (): Prevedie zadané pole malými písmenami.
- MID (): Extrahuje a vráti znak z textového poľa.
- FORMÁT (): Určuje formát zobrazenia.
- LEN(): Určuje dĺžku textového poľa.
- OKRÚHLY(): Zaokrúhli hodnotu desatinného poľa na číslo.
Otázka č. 12) Čo sú spúšťače ?
Odpoveď: Spúšťače v SQL sú druh uložených procedúr používaných na vytvorenie odpovede na konkrétnu akciu vykonanú v tabuľke, ako napríklad INSERT, UPDATE alebo DELETE. Spúšťače môžete vyvolať explicitne na stole v databáze.
Akcia a udalosť sú dve hlavné zložky spúšťačov SQL. Keď sa vykonajú určité akcie, udalosť nastane ako reakcia na túto akciu.
Syntax:
CREATE TRIGGER name BEFORE (event [OR..]} ON table_name [FOR [EACH] ROW] EXECUTE PROCEDURE functionname {arguments}
Otázka č. 13) Čo je to View v SQL?
Odpoveď: Zobrazenie je možné definovať ako virtuálnu tabuľku, ktorá obsahuje riadky a stĺpce s poľami z jednej alebo viacerých tabuliek.
S yntax:
CREATE VIEW view_name AS SELECT column_name(s) FROM table_name WHERE condition
Otázka č. 14) Ako môžeme aktualizovať zobrazenie?
Odpoveď: Na aktualizáciu zobrazenia je možné použiť SQL CREATE a REPLACE.
Vykonaním nižšie uvedeného dotazu aktualizujete vytvorené zobrazenie.
Syntax:
CREATE OR REPLACE VIEW view_name AS SELECT column_name(s) FROM table_name WHERE condition
Otázka č. 15) Vysvetlite fungovanie oprávnení SQL?
Odpoveď: Príkazy SQL GRANT a REVOKE sa používajú na implementáciu privilégií v prostredí viacerých používateľov SQL. Správca databázy môže udeliť alebo odobrať privilégiá používateľom databázových objektov alebo od nich pomocou príkazov ako VÝBER, VLOŽIŤ, AKTUALIZOVAŤ, ODSTRÁNIŤ, VŠETKO atď.
Velenie GRANT : Tento príkaz sa používa na zabezpečenie prístupu do databázy iným používateľom ako správcovi.
Syntax:
GRANT privilege_name ON object_name TO PUBLIC [WITH GRANT OPTION];
Vo vyššie uvedenej syntaxi voľba GRANT naznačuje, že používateľ môže povoliť prístup aj ďalšiemu používateľovi.
Príkaz REVOKE : Tento príkaz sa používa na zabezpečenie odmietnutia alebo odstránenia prístupu k objektom databázy.
Syntax:
REVOKE privilege_name ON object_name FROM PUBLIC;
Otázka č. 16) Koľko typov oprávnení je k dispozícii v SQL?
Odpoveď: V SQL sa používajú dva typy privilégií, ako napr
- Systémové oprávnenie: Systémové privilégium sa zaoberá objektom konkrétneho typu a poskytuje používateľom právo vykonávať s ním jednu alebo viac akcií. Medzi tieto akcie patrí vykonávanie administratívnych úloh, ALTER ANY INDEX, ALTER ANY ANY CACHE GROUP CREATE / ALTER / DELETE TABLE, CREATE / ALTER / DELETE VIEW atď.
- Privilégium objektu: To umožňuje vykonávať akcie na objekte alebo objekte iného používateľa, napr. tabuľka, pohľad, indexy atď. Niektoré z oprávnení objektu sú EXECUTE, INSERT, UPDATE, DELETE, SELECT, FLUSH, LOAD, INDEX, REFERENCES atď.
Otázka 17) Čo je to SQL Injection?
Odpoveď: SQL Injection je typ techniky útoku na databázu, pri ktorej sa škodlivé príkazy SQL vkladajú do vstupného poľa databázy tak, že po jej vykonaní je databáza vystavená útoku. Táto technika sa zvyčajne používa na útok na aplikácie riadené údajmi, aby mali prístup k citlivým údajom a vykonávali administratívne úlohy v databázach.
Napríklad,
SELECT column_name(s) FROM table_name WHERE condition;
Otázka 18) Čo je to sandbox SQL na serveri SQL Server?
Odpoveď: Sandbox SQL je bezpečné miesto v prostredí servera SQL, kde sa vykonávajú nedôveryhodné skripty. Existujú 3 typy karantény SQL:
- Sandbox bezpečného prístupu: Tu môže užívateľ vykonávať operácie SQL, ako je vytváranie uložených procedúr, spúšťačov atď., Ale nemôže mať prístup do pamäte a tiež nemôže vytvárať súbory.
- Sandbox pre externý prístup: Používatelia majú prístup k súborom bez toho, aby mali právo manipulovať s pridelením pamäte.
- Nebezpečný karanténa prístupu: Obsahuje nedôveryhodné kódy, kde môže mať používateľ prístup do pamäte.
Otázka č. 19) Aký je rozdiel medzi SQL a PL / SQL?
Odpoveď: SQL je štruktúrovaný dotazovací jazyk na vytváranie a prístup k databázam, zatiaľ čo PL / SQL je dodávaný s procedurálnymi konceptmi programovacích jazykov.
Otázka 20) Aký je rozdiel medzi SQL a MySQL?
Odpoveď: SQL je štruktúrovaný dotazovací jazyk, ktorý sa používa na manipuláciu a prístup k relačnej databáze. Na druhej strane je MySQL samotná relačná databáza, ktorá ako štandardný databázový jazyk používa SQL.
Otázka č. 21) Na čo sa používa funkcia NVL?
Odpoveď: Funkcia NVL sa používa na prevod nulovej hodnoty na skutočnú hodnotu.
Otázka č. 22) Aký je karteziánsky súčin tabuľky?
Odpoveď: Výstup krížového spojenia sa nazýva karteziánsky produkt. Vráti riadky kombinujúce každý riadok z prvej tabuľky s každým riadkom druhej tabuľky. Napríklad, ak spojíme dve tabuľky, ktoré majú 15 a 20 stĺpcov, kartézsky súčin dvoch tabuliek bude 15 × 20 = 300 riadkov.
Otázka č. 23) Čo myslíte pod pojmom Subquery?
Odpoveď: Dopyt v rámci iného dotazu sa nazýva poddotaz. Poddotaz sa nazýva vnútorný dotaz, ktorý vracia výstup, ktorý má byť použitý iným dotazom.
Otázka č. 24) Koľko operátorov porovnávania riadkov sa používa pri práci s poddotazom?
Odpoveď: V poddotazoch ako IN, ANY a ALL sa používajú trojriadkové operátory porovnania.
Otázka č. 25) Aký je rozdiel medzi klastrovanými a nekupovanými indexmi?
Odpoveď: Rozdiely medzi nimi sú nasledujúce:
- Jedna tabuľka môže mať iba jeden zoskupený index, ale viac neskupených indexov.
- Klastrované indexy sa dajú čítať skôr rýchlo ako klastrové indexy.
- Klastrované indexy ukladajú údaje fyzicky do tabuľky alebo zobrazenia, zatiaľ čo klastrované indexy neukladajú údaje do tabuľky, pretože má samostatnú štruktúru od dátového riadku.
Otázka č. 26) Aký je rozdiel medzi príkazmi DELETE a TRUNCATE?
Odpoveď: Rozdiely sú:
- Základný rozdiel v oboch je príkaz DELETE je príkaz DML a príkaz TRUNCATE je DDL.
- Príkaz DELETE sa používa na odstránenie konkrétneho riadku z tabuľky, zatiaľ čo príkaz TRUNCATE sa používa na odstránenie všetkých riadkov z tabuľky.
- Môžeme použiť príkaz DELETE s klauzulou WHERE, ale nemôžeme s ním použiť príkaz TRUNCATE.
Otázka č. 27) Aký je rozdiel medzi DROP a TRUNCATE?
Odpoveď: TRUNCATE odstráni z tabuľky všetky riadky, ktoré sa nedajú získať späť, program DROP odstráni celú tabuľku z databázy a taktiež ju nie je možné získať späť.
Otázka č. 28) Ako napísať dotaz na zobrazenie podrobností študenta z tabuľky Študenti, ktorého
meno zacat s K?
Odpoveď: Dotaz:
SELECT * FROM Student WHERE Student_Name like ‘K%’;
Tu sa na porovnávanie vzorov používa operátor „páči sa mi to“.
Otázka 29) Aký je rozdiel medzi vnoreným poddotazom a korelovaným poddotazom?
Odpoveď: Poddotaz v rámci iného poddotazu sa nazýva Vnorený poddotaz. Ak výstup poddotazu závisí od hodnôt stĺpca nadradenej tabuľky dotazov, potom sa dotaz nazýva Korelovaný poddotaz.
SELECT adminid(SELEC Firstname+' '+Lastname FROM Employee WHERE empid=emp. adminid)AS EmpAdminId FROM Employee;
Výsledkom dotazu sú podrobnosti o zamestnancovi z tabuľky Zamestnanci.
Otázka 30) Čo je normalizácia? Koľko je normalizačných foriem?
Odpoveď: Normalizácia sa používa na usporiadanie údajov takým spôsobom, že v databáze nikdy nedôjde k redundancii údajov a zabráni sa anomáliám pri vkladaní, aktualizácii a mazaní.
Existuje 5 foriem normalizácie:
- Prvá normálna forma (1NF): Odstráni všetky duplicitné stĺpce z tabuľky. Vytvorí tabuľku pre súvisiace údaje a identifikuje jedinečné hodnoty stĺpcov.
- Prvá normálna forma (2NF): Sleduje 1NF a vytvára a umiestňuje podmnožiny údajov do samostatnej tabuľky a definuje vzťah medzi tabuľkami pomocou primárneho kľúča.
- Tretia normálna forma (3NF): Sleduje 2NF a odstraňuje tie stĺpce, ktoré nesúvisia prostredníctvom primárneho kľúča.
- Štvrtý normálny tvar (4NF): Sleduje 3NF a nedefinuje viachodnotové závislosti. 4NF je tiež známy ako BCNF.
Otázka č. 31) Čo je vzťah? Koľko typov vzťahov existuje?
Odpoveď: Vzťah možno definovať ako spojenie medzi viac ako jednou tabuľkou v databáze.
Existujú 4 typy vzťahov:
- Vzťah jeden k jednému
- Vzťah „jeden k jednému“
- Vzťah medzi mnohými
- Vzťah jeden k mnohým
Otázka 32) Čo máte na mysli pod Uloženými procedúrami? Ako to používame?
Odpoveď: Uložená procedúra je kolekcia príkazov SQL, ktoré možno použiť ako funkciu na prístup do databázy. Tieto uložené procedúry môžeme vytvoriť skôr, ako ich použijeme, a môžeme ich vykonať, kedykoľvek to bude potrebné, uplatnením určitej podmienenej logiky. Uložené procedúry sa tiež používajú na zníženie sieťového prenosu a zlepšenie výkonu.
Syntax:
CREATE Procedure Procedure_Name ( //Parameters ) AS BEGIN SQL statements in stored procedures to update/retrieve records END
Otázka č. 33) Uveďte niektoré vlastnosti relačných databáz?
Odpoveď: Vlastnosti sú nasledujúce:
- V relačných databázach by mal mať každý stĺpec jedinečný názov.
- Postupnosť riadkov a stĺpcov v relačných databázach je nevýznamná.
- Všetky hodnoty sú atómové a každý riadok je jedinečný.
Otázka č. 34) Čo sú vnorené spúšťače?
Odpoveď: Spúšťače môžu implementovať logiku úpravy údajov pomocou príkazov INSERT, UPDATE a DELETE. Tieto spúšťače, ktoré obsahujú logiku úpravy údajov a nachádzajú ďalšie spúšťače úpravy údajov, sa nazývajú vnorené spúšťače.
Otázka č. 35) Čo je kurzor?
Odpoveď: Kurzor je databázový objekt, ktorý sa používa na manipuláciu s údajmi spôsobom po riadkoch.
Kurzor sleduje kroky uvedené nižšie:
- Vyhlásiť kurzor
- Otvorte kurzor
- Načítajte riadok z kurzora
- Spracujte riadok
- Zatvorte kurzor
- Prerozdeliť kurzor
Otázka č. 36) Čo je triedenie?
Odpoveď: Zoradenie je sada pravidiel, ktoré porovnávaním kontrolujú spôsob zoradenia údajov. Dáta znakov sa napríklad ukladajú pomocou správnej postupnosti znakov spolu s veľkosťou, typom písma a prízvukom.
Otázka 37) Čo musíme skontrolovať pri testovaní databázy?
Odpoveď: Pri testovaní databázy je potrebné testovať nasledovné:
- Pripojenie k databáze
- Kontrola obmedzení
- Povinné pole žiadosti a jeho veľkosť
- Získavanie a spracovanie údajov s operáciami DML
- Uložené procedúry
- Funkčný tok
Otázka č. 38) Čo je to testovanie bieleho poľa databázy?
Odpoveď: Testovanie databázy White Box zahŕňa:
- Konzistencia databázy a vlastnosti KYSELINA
- Spúšťače databázy a logické zobrazenia
- Pokrytie rozhodnutí, Pokrytie podmienok a Pokrytie vyhlásení
- Databázové tabuľky, dátový model a schéma databázy
- Pravidlá referenčnej integrity
Otázka č. 39) Čo je to testovanie čiernej skrinky databázy?
Odpoveď: Testovanie databázy Black Box zahŕňa:
- Mapovanie údajov
- Uložené a načítané údaje
- Využitie testovacích techník čiernej skrinky, ako napríklad rozdelenie ekvivalencie a analýza hraničných hodnôt (BVA)
Otázka č. 40) Čo sú to indexy v SQL?
Odpoveď: Index možno definovať ako spôsob rýchlejšieho načítania údajov. Indexy môžeme definovať pomocou príkazov CREATE.
Syntax:
CREATE INDEX index_name ON table_name (column_name)
Ďalej môžeme tiež vytvoriť jedinečný index pomocou nasledujúcej syntaxe:
CREATE UNIQUE INDEX index_name ON table_name (column_name)
AKTUALIZÁCIA: Pridali sme niekoľko ďalších krátkych otázok pre nácvik.
Otázka č. 41) Čo znamená SQL?
Odpoveď: SQL znamená Štruktúrovaný Dopytovací Jazyk .
Otázka č. 42) Ako vybrať všetky záznamy z tabuľky?
Odpoveď: Na výber všetkých záznamov z tabuľky musíme použiť nasledujúcu syntax:
Select * from table_name;
Otázka č. 43) Definovať spojenie a pomenovať rôzne typy pripojení?
Odpoveď: Kľúčové slovo Pripojiť sa používa na načítanie údajov z dvoch alebo viacerých súvisiacich tabuliek. Vráti riadky, v ktorých je najmenej jedna zhoda v oboch tabuľkách zahrnutých do spojenia. Viac sa dočítate tu .
Typ spojení sú:
najpopulárnejšie operačné systémy pre osobné počítače
- Pripojte sa správne
- Vonkajšie spojenie
- Úplné pripojenie
- Krížový spoj
- Ja sa pripojiť.
Otázka č. 44) Aká je syntax pridania záznamu do tabuľky?
Odpoveď: Na pridanie záznamu do tabuľky sa používa INSERT syntax.
Napríklad,
INSERT into table_name VALUES (value1, value2..);
Otázka č. 45) Ako pridáte stĺpec do tabuľky?
Odpoveď: Ak chcete do tabuľky pridať ďalší stĺpec, použite nasledujúci príkaz:
ALTER TABLE table_name ADD (column_name);
Odporúčané čítanie = >> Ako na to pridať stĺpec do tabuľky v MySQL
Q # 46) Definujte príkaz SQL DELETE.
Odpoveď: DELETE sa používa na odstránenie riadku alebo riadkov z tabuľky na základe zadanej podmienky.
Základná syntax je nasledovná:
DELETE FROM table_name WHERE
Otázka č. 47) Definovať POVINNOSŤ?
Odpoveď: COMMIT uloží všetky zmeny vykonané príkazmi DML.
Otázka č. 48) Čo je primárny kľúč?
Odpoveď: Primárny kľúč je stĺpec, ktorého hodnoty jednoznačne identifikujú každý riadok v tabuľke. Hodnoty primárneho kľúča nemožno nikdy znovu použiť.
Otázka 49) Čo sú cudzie kľúče?
Odpoveď: Keď sa do primárnych kľúčov tabuľky pridá pole do súvisiacich tabuliek, aby sa vytvorilo spoločné pole, ktoré sa týka týchto dvoch tabuliek, v iných tabuľkách sa to nazýva cudzí kľúč. Obmedzenia cudzieho kľúča vynucujú referenčnú integritu.
Otázka 50) Čo je to CHECK Constraint?
Odpoveď: Obmedzenie CHECK sa používa na obmedzenie hodnôt alebo typu údajov, ktoré je možné uložiť do stĺpca. Používajú sa na vynútenie integrity domény.
Otázka č. 51) Je možné, aby mala tabuľka viac ako jeden cudzí kľúč?
Odpoveď: Áno, tabuľka môže mať veľa cudzích kľúčov, ale iba jeden primárny kľúč.
Otázka č. 52) Aké sú možné hodnoty pre dátové pole BOOLEAN?
Odpoveď: Pre dátové pole BOOLEAN sú možné dve hodnoty: -1 (true) a 0 (false).
Otázka č. 53) Čo je uložená procedúra?
Odpoveď: Uložená procedúra je sada dotazov SQL, ktoré môžu prijímať vstup a odosielať späť výstup.
Otázka č. 54) Čo je to identita v SQL?
Odpoveď: Stĺpec identity, v ktorom SQL automaticky generuje číselné hodnoty. Môžeme definovať začiatočnú a prírastkovú hodnotu stĺpca identity.
Otázka č. 55) Čo je normalizácia?
Odpoveď: Proces návrhu tabuľky na minimalizáciu redundancie údajov sa nazýva normalizácia. Musíme rozdeliť databázu na dve alebo viac tabuliek a definovať vzťah medzi nimi.
Otázka č. 56) Čo je spúšťač?
Odpoveď: Spúšťač nám umožňuje vykonať dávku kódu SQL, keď dôjde k udalosti tabuľky (príkazy INSERT, UPDATE alebo DELETE sa vykonajú proti konkrétnej tabuľke).
Otázka č. 57) Ako vybrať náhodné riadky z tabuľky?
Odpoveď: Pomocou klauzuly SAMPLE môžeme vyberať náhodné riadky.
Napríklad,
SELECT * FROM table_name SAMPLE(10);
Otázka č. 58) Ktorý port TCP / IP spúšťa server SQL Server?
Odpoveď: Server SQL je predvolene spustený na porte 1433.
Otázka č. 59) Napíšte dotaz SQL SELECT, ktorý vráti každé meno z tabuľky iba raz?
Odpoveď: Ak chcete získať výsledok ako každé meno iba raz, musíme použiť kľúčové slovo DISTINCT.
SELECT DISTINCT name FROM table_name;
Otázka 60) Vysvetlite DML a DDL?
Odpoveď: DML znamená Data Manipulation Language. INSERT, UPDATE a DELETE sú vyhlásenia DML.
DDL znamená Data Definition Language. CREATE, ALTER, DROP, RENAME sú príkazy DDL.
Otázka č. 61) Môžeme premenovať stĺpec na výstupe z dotazu SQL?
Odpoveď: Áno, môžeme to urobiť pomocou nasledujúcej syntaxe.
SELECT column_name AS new_name FROM table_name;
Q # 62) Zadať poradie príkazu SQL SELECT?
Odpoveď: Poradie klauzúl SQL SELECT je: SELECT, FROM, WHERE, GROUP BY, HAVING, ORDER BY. Povinné sú iba klauzuly SELECT a FROM.
Otázka č. 63) Predpokladajme, že stĺpec Študent má dva stĺpce, Meno a Značky. Ako získať mená a známky troch najlepších študentov.
Odpoveď: VYBERTE Meno, ZNAČKY OD študenta s1, kde 3<= (SELECT COUNT(*) FROM Students s2 WHERE s1.marks = s2.marks)
Otázka č. 64) Čo sú komentáre SQL?
Odpoveď: Komentáre SQL je možné vložiť pridaním dvoch po sebe nasledujúcich pomlčiek (-).
Otázka č. 65) Rozdiel medzi príkazmi TRUNCATE, DELETE a DROP?
Odpoveď:
- ODSTRÁNIŤ odstráni niektoré alebo všetky riadky z tabuľky na základe podmienky. Môže sa vrátiť späť.
- OCELIŤ odstráni VŠETKY riadky z tabuľky zrušením alokácie stránok pamäte. Operáciu nie je možné vrátiť späť
- POKLES príkaz úplne odstráni tabuľku z databázy.
Otázka č. 66) Aké sú vlastnosti transakcie?
Odpoveď: Všeobecne sa tieto vlastnosti označujú ako vlastnosti KYSELINY. Oni sú:
- Atomicita
- Dôslednosť
- Izolácia
- Trvanlivosť.
Otázka 67) Čo máte na mysli pod pojmom ROWID?
Odpoveď: Je to 18-znakový pseudo stĺpec pripojený ku každému riadku tabuľky.
Otázka č. 68) Definujte ÚNIU, MÍNUSU, VŠETKU ÚNIE, PRIŤAŽTE SA?
Odpoveď:
- MÍNUS - vráti všetky odlišné riadky vybrané prvým dotazom, ale nie druhým.
- ÚNIA - vráti všetky odlišné riadky vybrané jedným z dotazov
- VŠETKO ÚNIA - vráti všetky riadky vybrané jedným z dotazov, vrátane všetkých duplikátov.
- PRIŤAŽTE sa - vráti všetky odlišné riadky vybrané obidvomi dotazmi.
Otázka č. 69) Čo je to transakcia?
Odpoveď: Transakcia je postupnosť kódu, ktorý sa spustí proti databáze. Trvá databázu z jedného konzistentného stavu do druhého.
Otázka č. 70) Aký je rozdiel medzi obmedzeniami UNIQUE a PRIMARY KEY?
Odpoveď: Rozdiely sú nasledujúce:
- Tabuľka môže mať iba jeden PRIMÁRNY KLÍČ, zatiaľ čo UNIKÁTNYCH kľúčov môže byť ľubovoľný počet.
- Primárny kľúč nemôže obsahovať hodnoty Null, zatiaľ čo jedinečný kľúč môže obsahovať hodnoty Null.
Otázka č. 71) Čo je zložený primárny kľúč?
Odpoveď: Primárny kľúč vytvorený vo viac ako jednom stĺpci sa nazýva zložený primárny kľúč.
Otázka č. 72) Čo je to index?
Odpoveď: Index je špeciálna štruktúra spojená s tabuľkou na zrýchlenie výkonu dotazov. Register môže byť vytvorený v jednom alebo viacerých stĺpcoch tabuľky.
Otázka č. 73) Čo je poddotaz?
Odpoveď: Poddotaz je podmnožina príkazov select, ktorých návratové hodnoty sa používajú v podmienkach filtrovania hlavného dotazu.
Otázka č. 74) Čo máte na mysli pod pojmom optimalizácia dotazu?
Odpoveď: Optimalizácia dotazu je proces, v ktorom databázový systém porovnáva rôzne stratégie dotazovania a vyberá dotaz s najmenšími nákladmi.
Otázka č. 75) Čo je triedenie?
Odpoveď: Sada pravidiel, ktoré definujú, ako sa ukladajú údaje, ako sa dá zaobchádzať s malými a veľkými písmenami a znakom Kana atď.
Otázka č. 76) Čo je referenčná integrita?
Odpoveď: Sada pravidiel, ktoré obmedzujú hodnoty jedného alebo viacerých stĺpcov tabuliek na základe hodnôt primárneho kľúča alebo jedinečného kľúča referenčnej tabuľky.
Otázka č. 77) Čo je funkcia Prípad?
Odpoveď: Case uľahčuje typ logiky typu if-then-else v SQL. Vyhodnotí zoznam podmienok a vráti jeden z viacerých možných výrazov výsledkov.
Otázka č. 78) Definujete dočasnú tabuľku?
Odpoveď: Dočasná tabuľka je štruktúra dočasného úložiska na dočasné ukladanie údajov.
Otázka č. 79) Ako sa môžeme vyhnúť duplikovaniu záznamov v dotaze?
Odpoveď: Použitím kľúčového slova DISTINCT možno zabrániť duplikácii záznamov v dotaze.
Otázka č. 80) Vysvetlite rozdiel medzi premenovaním a prezývkou?
Odpoveď: Premenovanie je trvalé pomenovanie pre tabuľku alebo stĺpec, zatiaľ čo Alias je dočasné pomenovanie pre tabuľku alebo stĺpec.
Otázka 81) Čo je to zobrazenie?
Odpoveď: Zobrazenie je virtuálna tabuľka, ktorá obsahuje údaje z jednej alebo viacerých tabuliek. Zobrazenia obmedzujú prístup k údajom k tabuľke výberom iba požadovaných hodnôt a uľahčujú zložité dotazy.
Otázka č. 82) Aké sú výhody zobrazení?
Odpoveď: Výhody zobrazení sú:
- Zobrazenia obmedzujú prístup k údajom, pretože v nich je možné zobraziť selektívne stĺpce z tabuľky.
- Pohľady sa dajú použiť na jednoduché dotazy na získanie výsledkov komplikovaných dotazov. Napríklad, zobrazenia možno použiť na dopytovanie informácií z viacerých tabuliek bez toho, aby o tom používateľ vedel.
Otázka č. 83) Zoznam rôznych privilégií, ktoré môže používateľ udeliť inému používateľovi?
Odpoveď: VYBERTE, PRIPOJTE, ZDROJE.
Otázka č. 84) Čo je to schéma?
Odpoveď: Schéma je kolekcia databázových objektov používateľa.
Otázka č. 85) Čo je to tabuľka?
Odpoveď: Tabuľka je základnou jednotkou ukladania údajov v systéme správy databázy. Údaje tabuľky sú uložené v riadkoch a stĺpcoch.
Otázka č. 86) Obsahuje View údaje?
Odpoveď: Nie, pohľady sú virtuálne štruktúry.
Otázka č. 87) Môže pohľad založený na inom zobrazení?
Odpoveď: Áno, pohľad je založený na inom pohľade.
Otázka č. 88) Aký je rozdiel medzi klauzulou HAVING a WHERE?
Odpoveď: Oba určujú podmienku vyhľadávania, ale klauzula having sa používa iba s príkazom SELECT a zvyčajne sa používa s klauzulou GROUP BY.
Ak sa klauzula GROUP BY nepoužíva, potom sa správalo iba ako klauzula WHERE.
Otázka č. 89) Aký je rozdiel medzi miestnymi a globálnymi dočasnými tabuľkami?
Odpoveď: Ak je definovaná vo vnútri zloženého príkazu, lokálna dočasná tabuľka existuje iba na dobu trvania tohto príkazu, ale globálna dočasná tabuľka existuje natrvalo v databáze, ale jej riadky zmiznú, keď sa spojenie ukončí.
Otázka č. 90) Čo je CTE?
Odpoveď: CTE alebo bežný tabuľkový výraz je výraz, ktorý obsahuje dočasnú množinu výsledkov definovanú v príkaze SQL.
Záver
SQL je podstatnou súčasťou databázového systému. Mať dobre ovládané znalosti o databáze spolu s koncepciami SQL bude určite prospešné prelomenie pohovoru pre príslušný profil.
Okrem niektorých významných konceptov existujú aj niektoré skryté fakty, ktoré zostávajú neviditeľné a ovplyvňujú váš výkon v rozhovore. V tomto návode som sa pokúsil vybaviť si niektoré z tých pojmov, ktoré sa zdajú byť malé, ale nemali by sa zanedbávať.
Dúfam, že v tomto článku nájdete odpovede na najčastejšie otázky týkajúce sa rozhovorov s SQL. Znalosť jazyka SQL je nevyhnutnosťou pre každého testera a tento článok vám pomôže pri príprave pohovoru.
Ďalšie čítanie => Všetko o testovaní databázy
Odporúčané čítanie
- Dotazy a odpovede na pohovor
- Najlepšie otázky týkajúce sa rozhovorov Oracle: Otázky Oracle Basic, SQL, PL / SQL
- 30 najdôležitejších otázok a odpovedí na pohovory s PL / SQL v roku 2021
- ETL Testovacie otázky a odpovede na pohovor
- Najlepšie otázky a odpovede z rozhovoru pre Teradata
- Niektoré zložité otázky a odpovede na ručné testovanie
- 25 najlepších otázok a odpovedí na agilné testovacie pohovory
- Spock Interview Otázky s odpoveďami (najobľúbenejšie)