top 90 sql interview questions
90 najbolj priljubljenih vprašanj in odgovorov za intervju z SQL:
To so najpogostejša in uporabna vprašanja za pogovore v SQL za sveže in izkušene kandidate. V tem članku so opisane osnove naprednih konceptov SQL.
Glejte ta vprašanja za hitro revizijo glavnih konceptov SQL pred nastopom na razgovoru.
Najboljša vprašanja o intervjuju za SQL
Začnimo.
V # 1) Kaj je SQL?
Odgovor: Jezik strukturiranih poizvedb SQL je orodje zbirke podatkov, ki se uporablja za ustvarjanje in dostop do baze podatkov za podporo programskim aplikacijam.
V # 2) Kaj so tabele v SQL?
Odgovor: Tabela je zbirka zapisov in njegovih informacij v enem pogledu.
V # 3) Katere različne vrste stavkov podpira SQL?
Odgovor:
Obstajajo 3 vrste stavkov SQL:
a) DDL (jezik za definicijo podatkov): Uporablja se za definiranje strukture baze podatkov, kot so tabele. Vključuje tri izjave, kot so CREATE, ALTER in DROP.
Preberite tudi = >> Vadnica za ustvarjanje tabel MySQL
Nekateri ukazi DDL so navedeni spodaj:
USTVARI : Uporablja se za ustvarjanje tabele.
CREATE TABLE table_name column_name1 data_type(size), column_name2 data_type(size), column_name3 data_type(size),
STAROST: Tabela ALTER se uporablja za spreminjanje obstoječega predmeta tabele v bazi podatkov.
ALTER TABLE table_name ADD column_name datatype
ALI
ALTER TABLE table_name DROP COLUMN column_name
b) DML (jezik za upravljanje podatkov): Ti stavki se uporabljajo za obdelavo podatkov v zapisih. Pogosto uporabljeni stavki DML so INSERT, UPDATE in DELETE.
Stavek SELECT se uporablja kot delni stavek DML, ki se uporablja za izbiro vseh ali ustreznih zapisov v tabeli.
c) DCL (jezik za nadzor podatkov): Ti stavki se uporabljajo za določanje privilegijev, kot sta GRANT in REVOKE dovoljenje za dostop do baze podatkov za določenega uporabnika .
V # 4) Kako uporabimo stavek DISTINCT? Kakšna je njegova uporaba?
Odgovor: Stavek DISTINCT se uporablja s stavkom SELECT. Če zapis vsebuje podvojene vrednosti, se s stavkom DISTINCT izberejo različne vrednosti med podvojenimi zapisi.
Sintaksa:
SELECT DISTINCT column_name(s) FROM table_name;
V # 5) Kateri so različni stavki, ki se uporabljajo v SQL?
Odgovor:
Klavzula WHERE: Ta klavzula se uporablja za definiranje pogoja, ekstrahiranje in prikaz samo tistih zapisov, ki izpolnjujejo dani pogoj.
Sintaksa:
SELECT column_name(s) FROM table_name WHERE condition;
Klavzula GROUP BY: Uporablja se z stavkom SELECT za združevanje rezultata izvedene poizvedbe z uporabo v njej določene vrednosti. Ujema se z vrednostjo z imenom stolpca v tabelah in temu primerno razvrsti v končni rezultat.
Nadaljnje branje => Skupina MySQL po vajah
Sintaksa:
SELECT column_name(s) FROM table_name GROUP BY column_name;
Klavzula HAVING: Ta klavzula se uporablja v povezavi s klavzulo GROUP BY. Uporablja se za vsako skupino rezultatov ali celoten rezultat kot eno skupino. Je precej podoben stavku WHERE, vendar je edina razlika v tem, da ga ne morete uporabljati brez klavzule GROUP BY
Sintaksa:
SELECT column_name(s) FROM table_name GROUP BY column_name HAVING condition;
Klavzula ORDER BY: Ta stavek se uporablja za določanje vrstnega reda izhoda poizvedbe bodisi naraščajoče (ASC) bodisi padajoče (DESC). Naraščajoče (ASC) je nastavljeno kot privzeto, padajoče (DESC) pa izrecno.
Sintaksa:
SELECT column_name(s) FROM table_name WHERE condition ORDER BY column_name ASC|DESC;
Klavzula USING: Klavzula USING se uporablja med delom s SQL JOIN. Uporablja se za preverjanje enakosti na podlagi stolpcev, ko so tabele združene. Uporablja se lahko namesto klavzule ON v JOIN.
Sintaksa:
SELECT column_name(s) FROM table_name JOIN table_name USING (column_name);
V # 6) Zakaj uporabljamo omejitve SQL? Katere omejitve lahko uporabimo pri ustvarjanju baze podatkov v SQL?
Odgovor: Omejitve se uporabljajo za nastavitev pravil za vse zapise v tabeli. Če se krši katera koli omejitev, lahko prekliče dejanje, ki je povzročilo.
Omejitve so definirane med ustvarjanjem same baze podatkov s stavkom CREATE TABLE ali celo potem, ko je tabela enkrat ustvarjena z stavkom ALTER TABLE.
V SQL se uporablja 5 glavnih omejitev, kot je
- NOT NULL: To pomeni, da mora imeti stolpec neko vrednost in ga ne sme pustiti NULL.
- UNIKATNO: Ta omejitev se uporablja za zagotovitev, da ima vsaka vrstica in stolpec enolično vrednost in da se nobena vrednost ne ponovi v nobeni drugi vrstici ali stolpcu.
- OSNOVNI KLJUČ: Ta omejitev se uporablja v povezavi z omejitvami NOT NULL in UNIQUE, kot je na primer en ali kombinacija več kot enega stolpca za identifikacijo določenega zapisa z edinstveno identiteto.
- TUJI KLJUČ: Uporablja se za zagotavljanje referenčne celovitosti podatkov v tabeli. Vrednost v eni tabeli se ujema z drugo s PRIMARNIM KLJUČEM.
- PREVERITE: Zagotavlja, ali vrednost v stolpcih izpolnjuje navedeni pogoj.
V # 7) Kateri so različni JOINS, ki se uporabljajo v SQL?
Odgovor:
Med delom na več tabelah v zbirkah podatkov SQL se uporabljajo 4 glavne vrste združitev:
INNER JOIN: Znano je tudi kot SIMPLE JOIN, ki vrne vse vrstice iz OBE tabel, če ima vsaj en ustrezen stolpec.
Sintaksa:
SELECT column_name(s) FROM table_name1 INNER JOIN table_name2 ON column_name1=column_name2;
Na primer,
V tem primeru imamo tabelo Zaposleni z naslednjimi podatki:
Ime druge tabele je Pridružitev.
Vnesite naslednji stavek 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;
Izbrani bodo 4 zapisi. Rezultati so:
Zaposleni in Naročila tabele imajo ujemanje identifikacijska številka stranke vrednost.
LEVO PRIDRUŽITEV (LEVO ZUNANJO PRIDRUŽITEV): To združevanje vrne vse vrstice iz LEFT tabele in njene ujemajoče se vrstice iz tabele RIGHT .
Sintaksa:
SELECT column_name(s) FROM table_name1 LEFT JOIN table_name2 ON column_name1=column_name2;
Na primer,
V tem primeru imamo tabelo Zaposleni z naslednjimi podatki:
Ime druge tabele je Pridružitev.
Vnesite naslednji stavek 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;
Izbrani bodo 4 zapisi. Videli boste naslednje rezultate:
DESNO PRIDRUŽITEV (DESNO ZUNANJE PRIDRUŽITEV): To združevanje vrne vse vrstice iz tabele DESNO in ujemajoče se vrstice iz tabele LEVO .
Sintaksa:
SELECT column_name(s) FROM table_name1 RIGHT JOIN table_name2 ON column_name1=column_name2;
Na primer,
V tem primeru imamo tabelo Zaposleni z naslednjimi podatki:
Ime druge tabele je Pridružitev.
Vnesite naslednji stavek 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;
Izhod:
Emp_id | Pridružitev_Date |
---|---|
E0012 | 2016/04/18 |
E0013 | 2016/04/19 |
E0014 | 01.05.2016 |
FULL JOIN (FULL OUTER JOIN): To združevanje vrne vse rezultate, če obstaja ujemanje bodisi v tabeli DESNO bodisi v tabeli LEVO .
Sintaksa:
SELECT column_name(s) FROM table_name1 FULL OUTER JOIN table_name2 ON column_name1=column_name2;
Na primer,
V tem primeru imamo tabelo Zaposleni z naslednjimi podatki:
Ime druge tabele je Pridružitev.
Vnesite naslednji stavek 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;
Izbranih bo 8 zapisov. To so rezultati, ki bi jih morali videti.
TO Preberite tudi => Vadnica za pridružitev MySQL
V # 8) Kaj so transakcije in njihov nadzor?
Odgovor: Transakcijo lahko definiramo kot nalogo zaporedja, ki se na bazah podatkov izvaja logično, da dosežemo določene rezultate. Operacije, kot so ustvarjanje, posodabljanje in brisanje zapisov, izvedenih v zbirki podatkov, prihajajo iz transakcij.
Z enostavnimi besedami lahko rečemo, da transakcija pomeni skupino poizvedb SQL, izvedenih v zapisih baze podatkov.
Obstajajo 4 kontrole transakcij, kot so
- OBVEZI : Uporablja se za shranjevanje vseh sprememb, izvedenih s transakcijo.
- ZAVRT : Uporablja se za povrnitev transakcije. Vse spremembe, ki jih naredi transakcija, se povrnejo nazaj in baza podatkov ostane enaka kot prej.
- NASTAVITE TRANSAKCIJO : Nastavite ime transakcije.
- SAVEPOINT: Uporablja se za določitev točke, ko naj se transakcija povrne.
V # 9) Kakšne so lastnosti transakcije?
Odgovor: Lastnosti transakcije so znane kot lastnosti ACID. To so:
- Atomicnost : Zagotavlja popolnost vseh izvedenih transakcij. Preveri, ali je vsaka transakcija uspešno zaključena ali ne. V nasprotnem primeru se transakcija prekine na točki okvare in se prejšnja transakcija povrne v začetno stanje, ko spremembe niso razveljavljene.
- Doslednost : Zagotavlja, da se vse spremembe, izvedene z uspešnimi transakcijami, pravilno odražajo v zbirki podatkov.
- Izolacija : Zagotavlja, da se vse transakcije izvajajo neodvisno, spremembe, ki jih naredi ena transakcija, pa se ne odražajo na drugih.
- Trajnost : Zagotavlja, da se spremembe v bazi podatkov z zavezanimi transakcijami vztrajajo, kot tudi po okvari sistema.
V # 10) Koliko skupnih funkcij je na voljo v SQL?
Odgovor: Skupne funkcije SQL določajo in izračunajo vrednosti iz več stolpcev v tabeli in vrnejo eno vrednost.
V SQL-u je 7 skupnih funkcij:
- AVG (): Vrne povprečno vrednost iz podanih stolpcev.
- ŠTEVILO (): Vrne število vrstic tabele.
- MAX (): Vrne največjo vrednost med zapisi.
- MIN (): Vrne najmanjšo vrednost med zapisi.
- SUM (): Vrne vsoto podanih vrednosti stolpcev.
- PRVI (): Vrne prvo vrednost.
- ZADNJE (): Vrne zadnjo vrednost.
V # 11) Kaj so skalarne funkcije v SQL?
Odgovor: Skalarne funkcije se uporabljajo za vrnitev posamezne vrednosti na podlagi vhodnih vrednosti.
Skalarne funkcije so naslednje:
- UCASE (): Pretvori določeno polje v velikih črkah.
- LCASE (): Pretvori določeno polje z malimi črkami.
- MID (): Izvleče in vrne znak iz besedilnega polja.
- FORMAT (): Določa obliko prikaza.
- LEN (): Določa dolžino besedilnega polja.
- KROG (): Zaokroži vrednost decimalnega polja na število.
V # 12) Kaj so sprožilci ?
Odgovor: Sprožilci v SQL so neke vrste shranjene procedure, ki se uporabljajo za ustvarjanje odziva na določeno dejanje, izvedeno v tabeli, kot so INSERT, UPDATE ali DELETE. Sprožilce lahko izrecno prikličete v tabeli v bazi podatkov.
Action in Event sta dve glavni komponenti sprožilcev SQL. Ko se izvedejo določena dejanja, se dogodek odzove na to dejanje.
Sintaksa:
CREATE TRIGGER name BEFORE (event (OR..)} ON table_name (FOR (EACH) ROW) EXECUTE PROCEDURE functionname {arguments}
V # 13) Kaj je pogled v SQL?
Odgovor: Pogled lahko definiramo kot navidezno tabelo, ki vsebuje vrstice in stolpce s polji iz ene ali več tabel.
S sintaksa:
CREATE VIEW view_name AS SELECT column_name(s) FROM table_name WHERE condition
V # 14) Kako lahko posodobimo pogled?
Odgovor: Za posodabljanje pogleda je mogoče uporabiti SQL CREATE in REPLACE.
Izvedite spodnjo poizvedbo za posodobitev ustvarjenega pogleda.
Sintaksa:
CREATE OR REPLACE VIEW view_name AS SELECT column_name(s) FROM table_name WHERE condition
V # 15) Pojasnite delovanje privilegijev SQL?
Odgovor: Ukaza SQL GRANT in REVOKE se uporabljajo za izvajanje privilegijev v več uporabniških okoljih SQL. Skrbnik baze podatkov lahko uporabnikom predmetov baze podatkov podeli ali prekliče pravice z uporabo ukazov, kot so SELECT, INSERT, UPDATE, DELETE, ALL itd.
DODAJ Ukaz : Ta ukaz se uporablja za dostop do baze podatkov uporabnikom, ki niso skrbnik.
Sintaksa:
GRANT privilege_name ON object_name TO PUBLIC (WITH GRANT OPTION);
V zgornji sintaksi možnost GRANT označuje, da lahko uporabnik dovoli dostop tudi drugemu uporabniku.
Ukaz REVOKE : Ta ukaz se uporablja za omogočanje zavrnitve ali odstranjevanja dostopa do predmetov baze podatkov.
Sintaksa:
REVOKE privilege_name ON object_name FROM PUBLIC;
V # 16) Koliko vrst privilegijev je na voljo v SQL?
Odgovor: V SQL se uporabljata dve vrsti privilegijev, na primer
- Sistemski privilegij: Sistemski privilegij obravnava predmet določene vrste in uporabnikom zagotavlja pravico, da nad njim izvede eno ali več dejanj. Ta dejanja vključujejo izvajanje administrativnih nalog, ALTER KATERIH KODEKS, ALTER KAKRŠNEGA SKLOPA PREDMETA Ustvari / spremeni / izbriši mizo, ustvari / spremeni / izbriši pogled itd.
- Privilegij objekta: To omogoča izvajanje dejanj nad objektom ali predmetom drugih uporabnikov, tj. tabela, pogled, indeksi itd. Nekateri privilegiji predmeta so EXECUTE, INSERT, UPDATE, DELETE, SELECT, FLUSH, LOAD, INDEX, REFERENC itd.
V # 17) Kaj je SQL Injection?
Odgovor: SQL Injection je vrsta tehnike napada na bazo podatkov, pri kateri se zlonamerni stavki SQL vstavijo v vnosno polje baze podatkov na način, da je baza podatkov, ko se izvede, napadalcu izpostavljena napadu. Ta tehnika se običajno uporablja za napade na podatkovno vodene aplikacije, da imajo dostop do občutljivih podatkov in izvajajo administrativne naloge v zbirkah podatkov.
Na primer,
SELECT column_name(s) FROM table_name WHERE condition;
V # 18) Kaj je SQL Sandbox v SQL Serverju?
Odgovor: SQL Sandbox je varno mesto v okolju strežnika SQL, kjer se izvajajo nezaupljivi skripti. Obstajajo 3 vrste peskovnika SQL:
- Sandbox za varen dostop: Tu lahko uporabnik izvaja operacije SQL, kot je ustvarjanje shranjenih procedur, sprožilcev itd., Vendar ne more imeti dostopa do pomnilnika in ne more ustvarjati datotek.
- Peskovnik zunanjega dostopa: Uporabniki lahko dostopajo do datotek, ne da bi imeli pravico manipulirati z dodeljevanjem pomnilnika.
- Nevarni dostopni peskovnik: Vsebuje nezaupne kode, kjer ima uporabnik dostop do pomnilnika.
V # 19) Kakšna je razlika med SQL in PL / SQL?
Odgovor: SQL je jezik strukturiranih poizvedb za ustvarjanje in dostop do baz podatkov, PL / SQL pa ima postopkovne koncepte programskih jezikov.
V # 20) Kakšna je razlika med SQL in MySQL?
Odgovor: SQL je jezik strukturiranih poizvedb, ki se uporablja za manipulacijo in dostop do relacijske baze podatkov. Po drugi strani pa je MySQL sam relacijska baza podatkov, ki uporablja SQL kot standardni jezik zbirke podatkov.
V # 21) Kakšna je uporaba funkcije NVL?
Odgovor: Funkcija NVL se uporablja za pretvorbo ničelne vrednosti v njeno dejansko vrednost.
V # 22) Kakšen je kartezični izdelek tabele?
Odgovor: Rezultat navzkrižnega združevanja se imenuje kartezični izdelek. Vrne vrstice, ki združujejo vsako vrstico iz prve tabele z vsako vrstico druge tabele. Na primer, če združimo dve tabeli s 15 in 20 stolpci, bo kartezični zmnožek dveh tabel 15 × 20 = 300 vrstic.
V # 23) Kaj mislite s podpoizvedbo?
Odgovor: Poizvedba znotraj druge poizvedbe se imenuje podpoizvedba. Podpoizvedba se imenuje notranja poizvedba, ki vrne izhod, ki naj bi ga uporabila druga poizvedba.
V # 24) Koliko operaterjev primerjave vrstic se uporablja med delom s podpoizvedbo?
Odgovor: Obstajajo 3-vrstni primerjalni operaterji, ki se uporabljajo v podpoizvedbah, kot so IN, ANY in ALL.
V # 25) Kakšna je razlika med grozdnimi in neklasteriziranimi indeksi?
Odgovor: Razlike med obema so naslednje:
- Ena tabela ima lahko samo en gručasti indeks, vendar več neskupinskih indeksov.
- Gručaste indekse je mogoče brati hitro, ne pa gručaste indekse.
- Gručasti indeksi shranjujejo podatke fizično v tabeli ali pogledu, medtem ko neklasteri indeksi ne shranjujejo podatkov v tabeli, saj ima ločeno strukturo od podatkovne vrstice.
V # 26) Kakšna je razlika med DELETE in TRUNCATE?
Odgovor: Razlike so:
- Osnovna razlika v obeh je ukaz DELETE je ukaz DML, ukaz TRUNCATE pa DDL.
- Ukaz DELETE se uporablja za brisanje določene vrstice iz tabele, ukaz TRUNCATE pa za odstranitev vseh vrstic iz tabele.
- Ukaz DELETE lahko uporabimo s stavkom WHERE, vendar z njim ne moremo uporabiti ukaza TRUNCATE.
V # 27) Kakšna je razlika med DROP in TRUNCATE?
Odgovor: TRUNCATE iz tabele odstrani vse vrstice, ki jih ni mogoče pridobiti nazaj, DROP pa celotno tabelo iz baze podatkov in je tudi ni mogoče dobiti nazaj.
V # 28) Kako napisati poizvedbo za prikaz podrobnosti študenta iz tabele Študenti, katere
ime se začne s K?
Odgovor: Poizvedba:
SELECT * FROM Student WHERE Student_Name like ‘K%’;
Tu se za ujemanje vzorcev uporablja operator ‘všeč’.
V # 29) Kakšna je razlika med ugnezdenimi podpoizvedbami in koreliranimi podpoizvedbami?
Odgovor: Podpoizvedba znotraj drugega podpoizvedbe se imenuje ugnezdena podpoizvedba. Če je izhod podpoizvedbe odvisen od vrednosti stolpcev nadrejene tabele poizvedb, se poizvedba imenuje korelirano podpoizvedbo.
SELECT adminid(SELEC Firstname+' '+Lastname FROM Employee WHERE empid=emp. adminid)AS EmpAdminId FROM Employee;
Rezultat poizvedbe so podatki o zaposlenem iz tabele Zaposleni.
V # 30) Kaj je normalizacija? Koliko je normalizacijskih obrazcev?
Odgovor: Normalizacija se uporablja za organizacijo podatkov na tak način, da v bazi podatkov nikoli ne pride do presežka podatkov in se izognemo nepravilnostim pri vstavljanju, posodabljanju in brisanju.
Obstaja 5 oblik normalizacije:
- Prva običajna oblika (1NF): Iz tabele odstrani vse podvojene stolpce. Ustvari tabelo za povezane podatke in prepozna edinstvene vrednosti stolpcev.
- Prva običajna oblika (2NF): Sledi 1NF in ustvarja ter postavlja podnabore podatkov v posamezno tabelo in s pomočjo primarnega ključa določa razmerje med tabelami.
- Tretji običajni obrazec (3NF): Sledi 2NF in odstrani tiste stolpce, ki niso povezani s primarnim ključem.
- Četrta običajna oblika (4NF): Sledi 3NF in ne definira večvrednosti odvisnosti. 4NF je znan tudi kot BCNF.
V # 31) Kaj je razmerje? Koliko vrst odnosov obstaja?
Odgovor: Razmerje lahko definiramo kot povezavo med več kot eno tabelo v bazi podatkov.
Obstajajo 4 vrste odnosov:
- Odnos ena do ena
- Odnos veliko do enega
- Odnos veliko do veliko
- Odnos enega do mnogih
V # 32) Kaj mislite s shranjenimi postopki? Kako ga uporabimo?
Odgovor: Shranjena procedura je zbirka stavkov SQL, ki se lahko uporablja kot funkcija za dostop do baze podatkov. Te shranjene postopke lahko ustvarimo prej, preden jih uporabimo, in jih lahko izvajamo, kadar koli je to potrebno, tako da zanjo uporabimo neko pogojno logiko. Shranjeni postopki se uporabljajo tudi za zmanjšanje omrežnega prometa in izboljšanje zmogljivosti.
Sintaksa:
CREATE Procedure Procedure_Name ( //Parameters ) AS BEGIN SQL statements in stored procedures to update/retrieve records END
V # 33) Navedite nekatere lastnosti relacijskih baz podatkov?
Odgovor: Lastnosti so naslednje:
- V relacijskih zbirkah podatkov mora imeti vsak stolpec edinstveno ime.
- Zaporedje vrstic in stolpcev v relacijskih zbirkah podatkov je nepomembno.
- Vse vrednosti so atomske in vsaka vrstica je unikatna.
V # 34) Kaj so ugnezdeni sprožilci?
Odgovor: Sprožilci lahko izvajajo logiko spreminjanja podatkov z uporabo stavkov INSERT, UPDATE in DELETE. Ti sprožilci, ki vsebujejo logiko spreminjanja podatkov in najdejo druge sprožilce za spremembo podatkov, se imenujejo ugnezdeni sprožilci.
V # 35) Kaj je kazalec?
Odgovor: Kazalec je objekt baze podatkov, ki se uporablja za obdelavo podatkov na način od vrstice do vrstice.
Kazalec sledi spodnjim korakom:
- Izjavi kazalec
- Odprti kazalec
- Pridobi vrstico s kazalko
- Obdelaj vrstico
- Zapri kazalec
- Odstranite kurzor
V # 36) Kaj je primerjava?
Odgovor: Zbirka je sklop pravil, ki s primerjavo preverjajo, kako so podatki razvrščeni. Podatki o znakih se shranijo s pravilnim zaporedjem znakov, skupaj z občutljivostjo na črke, vrsto in naglasom.
V # 37) Kaj moramo preveriti pri testiranju zbirke podatkov?
Odgovor: Pri testiranju zbirke podatkov je treba preskusiti naslednje:
- Povezava z bazo podatkov
- Preverjanje omejitev
- Obvezno polje aplikacije in njegova velikost
- Pridobivanje in obdelava podatkov z operacijami DML
- Shranjeni postopki
- Funkcionalni tok
V # 38) Kaj je preskušanje podatkovne zbirke?
Odgovor: Testiranje podatkovne zbirke White Box vključuje:
- Skladnost baze podatkov in lastnosti ACID
- Sprožilci zbirke podatkov in logični pogledi
- Pokritost odločitve, pokritost pogojev in pokritost izjave
- Tabele zbirk podatkov, podatkovni model in shema zbirke podatkov
- Pravila referenčne integritete
V # 39) Kaj je testiranje črne skrinjice baze podatkov?
Odgovor: Testiranje podatkovne zbirke Black Box vključuje:
- Preslikava podatkov
- Podatki shranjeni in pridobljeni
- Uporaba tehnik testiranja črne skrinjice, kot sta enakovredna razdelitev in analiza mejne vrednosti (BVA)
V # 40) Kaj so indeksi v SQL?
Odgovor: Indeks lahko definiramo kot način hitrejšega pridobivanja podatkov. Kazala lahko definiramo s pomočjo stavkov CREATE.
Sintaksa:
CREATE INDEX index_name ON table_name (column_name)
Nadalje lahko ustvarimo tudi enolični indeks z uporabo naslednje sintakse:
CREATE UNIQUE INDEX index_name ON table_name (column_name)
NADGRADNJA: Dodali smo še nekaj kratkih vprašanj za vajo.
V # 41) Kaj pomeni SQL?
Odgovor: SQL pomeni Strukturirani povpraševalni jezik za delo s podatkovnimi bazami .
V # 42) Kako izbrati vse zapise iz tabele?
Odgovor: Za izbiro vseh zapisov iz tabele moramo uporabiti naslednjo skladnjo:
Select * from table_name;
V # 43) Določite pridružitev in poimenujte različne vrste združitev?
Odgovor: Ključna beseda Join se uporablja za pridobivanje podatkov iz dveh ali več sorodnih tabel. Vrne vrstice z vsaj enim ujemanjem v obeh tabelah, vključenih v združevanje. Preberite več tukaj .
Vrste pridružitev so:
- Desno se pridruži
- Zunanje pridružitev
- Popolna pridružitev
- Prekrivanje
- Pridružite se sami.
V # 44) Kakšna je sintaksa dodajanja zapisa v tabelo?
Odgovor: Za dodajanje zapisa v tabelo se uporablja sintaksa INSERT.
Na primer,
INSERT into table_name VALUES (value1, value2..);
V # 45) Kako v tabelo dodate stolpec?
Odgovor: Če želite dodati še en stolpec v tabelo, uporabite naslednji ukaz:
ALTER TABLE table_name ADD (column_name);
Priporočeno branje = >> Kako dodaj stolpec v tabelo v MySQL
V # 46) Določite stavek SQL DELETE.
Odgovor: DELETE se uporablja za brisanje vrstice ali vrstic iz tabele na podlagi določenega pogoja.
Osnovna sintaksa je naslednja:
DELETE FROM table_name WHERE
V # 47) Določite COMMIT?
Odgovor: COMMIT shrani vse spremembe, ki jih naredijo stavki DML.
V # 48) Kaj je primarni ključ?
Odgovor: Primarni ključ je stolpec, katerega vrednosti enolično identificirajo vsako vrstico v tabeli. Vrednosti primarnega ključa ni mogoče ponovno uporabiti.
V # 49) Kaj so tuji ključi?
Odgovor: Ko je polje primarnega ključa tabele dodano sorodnim tabelam, da se ustvari skupno polje, ki povezuje obe tabeli, v drugih tabelah pokliče tuji ključ. Omejitve tujih ključev uveljavljajo referenčno integriteto.
V # 50) Kaj je CHECK Constraint?
Odgovor: Omejitev CHECK se uporablja za omejitev vrednosti ali vrste podatkov, ki jih je mogoče shraniti v stolpec. Uporabljajo se za uveljavljanje integritete domene.
V # 51) Ali lahko tabela vsebuje več kot en tuji ključ?
Odgovor: Da, tabela ima lahko veliko tujih ključev, vendar le en primarni ključ.
V # 52) Kakšne so možne vrednosti za podatkovno polje BOOLEAN?
Odgovor: Za podatkovno polje BOOLEAN sta možni dve vrednosti: -1 (true) in 0 (false).
V # 53) Kaj je shranjeni postopek?
Odgovor: Shranjeni postopek je nabor poizvedb SQL, ki lahko sprejme vhod in pošlje nazaj izhod.
V # 54) Kaj je identiteta v SQL?
Odgovor: Stolpec identitete, v katerem SQL samodejno generira številske vrednosti. Določimo lahko začetno in inkrementalno vrednost stolpca identitete.
V # 55) Kaj je normalizacija?
Odgovor: Postopek oblikovanja tabele za zmanjšanje redundancije podatkov se imenuje normalizacija. Bazo podatkov moramo razdeliti na dve ali več tabel in opredeliti razmerje med njimi.
V # 56) Kaj je sprožilec?
Odgovor: Sprožilec nam omogoča, da izvedemo paket kode SQL, ko se zgodi dogodek tabele (ukazi INSERT, UPDATE ali DELETE se izvedejo proti določeni tabeli).
V # 57) Kako izbrati naključne vrstice iz tabele?
Odgovor: S stavkom SAMPLE lahko izberemo naključne vrstice.
Na primer,
SELECT * FROM table_name SAMPLE(10);
V # 58) Katera vrata TCP / IP izvaja SQL Server?
Odgovor: SQL Server se privzeto izvaja na vratih 1433.
V # 59) Napišite poizvedbo SQL SELECT, ki vsako ime iz tabele vrne samo enkrat?
Odgovor: Da bomo rezultat dobili kot vsako ime samo enkrat, moramo uporabiti ključno besedo DISTINCT.
SELECT DISTINCT name FROM table_name;
V # 60) Pojasnite DML in DDL?
Odgovor: DML pomeni Data Manipulation Language. INSERT, UPDATE in DELETE so stavki DML.
DDL pomeni Data Definition Language. CREATE, ALTER, DROP, RENAME so stavki DDL.
V # 61) Ali lahko v izhodu poizvedbe SQL preimenujemo stolpec?
Odgovor: Da, z naslednjo sintakso lahko to storimo.
SELECT column_name AS new_name FROM table_name;
V # 62) Dajte vrstni red SQL SELECT?
Odgovor: Vrstni red stavkov SQL SELECT je: SELECT, FROM, WHERE, GROUP BY, HAVING, ORDER BY. Obvezna sta le stavka SELECT in FROM.
testiranje generiranja podatkov pri testiranju programske opreme
V # 63) Recimo, da ima študentski stolpec dva stolpca, Ime in Oznake. Kako priti do imen in oznak najboljših treh študentov.
Odgovor: IZBERI ime, oznake IZ študenta s1, kjer 3<= (SELECT COUNT(*) FROM Students s2 WHERE s1.marks = s2.marks)
V # 64) Kaj so komentarji SQL?
Odgovor: Komentarje SQL lahko vstavite tako, da dodate dve zaporedni vezaji (-).
V # 65) Razlika med ukazi TRUNCATE, DELETE in DROP?
Odgovor:
- IZBRIŠI odstrani nekatere ali vse vrstice iz tabele glede na stanje. Lahko se zavrne nazaj.
- RAZREŽI odstrani VSE vrstice iz tabele z razdelitvijo pomnilniških strani. Operacije ni mogoče vrniti nazaj
- POPUST ukaz popolnoma odstrani tabelo iz baze podatkov.
V # 66) Kakšne so lastnosti transakcije?
Odgovor: Na splošno se te lastnosti imenujejo lastnosti kisline. To so:
- Atomicnost
- Doslednost
- Izolacija
- Trajnost.
V # 67) Kaj mislite z ROWID?
Odgovor: To je 18 znakov dolg psevdo stolpec, ki je priložen vsaki vrstici tabele.
V # 68) Opredelite UNION, MINUS, UNION ALL, INTERSECT?
Odgovor:
- MINUS - vrne vse ločene vrstice, ki jih je izbrala prva poizvedba, ne pa tudi druga.
- UNIJA - vrne vse ločene vrstice, izbrane s katero koli poizvedbo
- UNIJA VSE - vrne vse vrstice, izbrane s katero koli poizvedbo, vključno z vsemi dvojniki.
- INTERSECT - vrne vse ločene vrstice, ki sta jih izbrali obe poizvedbi.
V # 69) Kaj je transakcija?
Odgovor: Transakcija je zaporedje kode, ki deluje proti zbirki podatkov. Baza podatkov popelje iz enega konsistentnega stanja v drugega.
V # 70) Kakšna je razlika med omejitvami UNIQUE in PRIMARY KEY?
Odgovor: Razlike so naslednje:
- Tabela ima lahko samo en PRIMARNI KLJUČ, UNIQUE ključev pa je lahko poljubno število.
- Primarni ključ ne sme vsebovati vrednosti Null, medtem ko lahko ključ Unique vsebuje vrednosti Null.
V # 71) Kaj je sestavljeni primarni ključ?
Odgovor: Primarni ključ, ustvarjen v več stolpcih, se imenuje sestavljeni primarni ključ.
V # 72) Kaj je indeks?
Odgovor: Indeks je posebna struktura, povezana s tabelo, da pospeši izvajanje poizvedb. Indeks je mogoče ustvariti v enem ali več stolpcih tabele.
V # 73) Kaj je podpoizvedba?
Odgovor: Podpoizvedba je podnabor izbranih stavkov, katerih vrnjene vrednosti se uporabljajo v pogojih filtriranja glavne poizvedbe.
V # 74) Kaj mislite z optimizacijo poizvedbe?
Odgovor: Optimizacija poizvedbe je postopek, v katerem sistem baz podatkov primerja različne strategije poizvedb in izbere poizvedbo z najmanj stroški.
V # 75) Kaj je primerjava?
Odgovor: Nabor pravil, ki določajo, kako se shranjujejo podatki, kako se lahko obravnava občutljivost na velike in male črke in znak Kana itd.
V # 76) Kaj je referenčna integriteta?
Odgovor: Nabor pravil, ki omejujejo vrednosti enega ali več stolpcev tabel na podlagi vrednosti primarnega ključa ali unikatnega ključa referenčne tabele.
V # 77) Kaj je funkcija Case?
Odgovor: Case olajša logiko if-then-else v SQL. Oceni seznam pogojev in vrne enega od več možnih rezultatskih izrazov.
V # 78) Določite začasno tabelo?
Odgovor: Začasna tabela je začasna shramba za začasno shranjevanje podatkov.
V # 79) Kako se lahko izognemo podvajanju zapisov v poizvedbi?
Odgovor: Z uporabo ključne besede DISTINCT se lahko izognemo podvajanju zapisov v poizvedbi.
V # 80) Pojasnite razliko med preimenovanjem in vzdevkom?
Odgovor: Preimenovanje je trajno ime tabele ali stolpca, medtem ko je vzdevek začasno ime tabele ali stolpca.
V # 81) Kaj je pogled?
Odgovor: Pogled je navidezna tabela, ki vsebuje podatke iz ene ali več tabel. Pogledi omejujejo dostop do podatkov do tabele z izbiro samo zahtevanih vrednosti in olajšajo zapletene poizvedbe.
V # 82) Kakšne so prednosti pogledov?
Odgovor: Prednosti pogledov so:
- Pogledi omejujejo dostop do podatkov, ker lahko pogled prikaže izbirne stolpce iz tabele.
- Pogledi se lahko uporabljajo za preproste poizvedbe za pridobivanje rezultatov zapletenih poizvedb. Na primer, pogledi se lahko uporabljajo za iskanje informacij iz več tabel, ne da bi uporabnik vedel.
V # 83) Naštejte različne privilegije, ki jih lahko uporabnik podeli drugemu uporabniku?
Odgovor: IZBERI, POVEŽI, VIRE.
V # 84) Kaj je shema?
Odgovor: Shema je zbirka predmetov baze podatkov uporabnika.
V # 85) Kaj je tabela?
Odgovor: Tabela je osnovna enota za shranjevanje podatkov v sistemu za upravljanje baz podatkov. Podatki tabele so shranjeni v vrsticah in stolpcih.
V # 86) Ali Pogled vsebuje podatke?
Odgovor: Ne, Pogledi so navidezne strukture.
V # 87) Ali lahko pogled temelji na drugem pogledu?
Odgovor: Da, Pogled temelji na drugem pogledu.
V # 88) Kakšna je razlika med klavzulo HAVING in klavzulo WHERE?
Odgovor: Oba določata pogoj iskanja, vendar se stavek Have uporablja samo z stavkom SELECT in se običajno uporablja s stavkom GROUP BY.
Če se ne uporablja stavek GROUP BY, se je obnašal kot samo stavek WHERE.
V # 89) Kakšna je razlika med lokalnimi in globalnimi začasnimi tabelami?
Odgovor: Če je definirana znotraj sestavljenega stavka, lokalna začasna tabela obstaja le za čas trajanja tega stavka, vendar globalna začasna tabela trajno obstaja v DB, vendar njene vrstice izginejo, ko je povezava zaprta.
V # 90) Kaj je CTE?
Odgovor: Izraz CTE ali skupna tabela je izraz, ki vsebuje začasni niz rezultatov, ki je definiran v stavku SQL.
Zaključek
SQL je bistveni sestavni del sistema baz podatkov. Če dobro obvladate bazo podatkov skupaj s koncepti SQL, bo zagotovo koristno, če boste poiskali intervju za zadevni profil.
Poleg nekaterih glavnih konceptov obstaja nekaj skritih dejstev, ki ostanejo nevidna in vplivajo na vaš nastop v intervjuju. V tej vadnici sem se poskušal spomniti nekaterih konceptov, ki se zdijo majhni, vendar jih ne smemo zanemariti.
Upam, da boste v tem članku našli odgovore na najpogostejša vprašanja v zvezi z intervjuji SQL. Poznavanje SQL je obvezno za vsakega preizkuševalca, ta članek pa vam bo pomagal pri pripravi razgovora.
Nadaljnje branje => Vse o testiranju zbirke podatkov
Priporočeno branje
- Vprašanja in odgovori za intervjuje
- Najpogostejša vprašanja za intervju z Oracle: Vprašanja za Oracle Basic, SQL, PL / SQL
- 30 najpomembnejših vprašanj in odgovorov na PL / SQL v letu 2021
- Vprašanja in odgovori za preizkušanje ETL
- Najboljša vprašanja in odgovori za intervjuje Teradata
- Nekaj zapletenih ročnih preizkusov Vprašanja in odgovori
- 25 najboljših agilnih preizkusnih vprašanj in odgovorov
- Vprašanja za intervju z Spockom (odgovori) (najbolj priljubljeni)