top 90 sql interview questions
90 najpopularnijih pitanja i odgovora za SQL intervju:
Ovo su najčešća i najkorisnija pitanja za SQL intervjue kako za svježe tako i za iskusne kandidate. U ovom su članku pokrivene osnove naprednih koncepata SQL-a.
Pogledajte ova pitanja za brzu reviziju glavnih SQL koncepata prije nego što se pojavite na intervjuu.
Najbolja pitanja za SQL intervju
Počnimo.
P # 1) Što je SQL?
Odgovor: Jezik strukturiranih upita SQL je alat baze podataka koji se koristi za stvaranje i pristup bazi podataka za podršku softverskim aplikacijama.
P # 2) Što su tablice u SQL-u?
Odgovor: Tablica je zbirka zapisa i njegovih podataka u jednom prikazu.
P # 3) Koje različite vrste izjava podržava SQL?
Odgovor:
Postoje 3 vrste SQL izraza:
a) DDL (jezik za definiciju podataka): Koristi se za definiranje strukture baze podataka kao što su tablice. Sadrži tri izjave poput CREATE, ALTER i DROP.
Također pročitajte = >> MySQL Vodič za izradu tablica
Neke od DDL naredbi navedene su u nastavku:
STVORITI : Koristi se za izradu tablice.
CREATE TABLE table_name column_name1 data_type(size), column_name2 data_type(size), column_name3 data_type(size),
DOB: Tablica ALTER koristi se za izmjenu postojećeg objekta tablice u bazi podataka.
ALTER TABLE table_name ADD column_name datatype
ILI
ALTER TABLE table_name DROP COLUMN column_name
b) DML (jezik za manipulaciju podacima): Te se izjave koriste za manipulaciju podacima u zapisima. DML izrazi koji se često koriste su INSERT, UPDATE i DELETE.
Izraz SELECT koristi se kao djelomični DML izraz koji se koristi za odabir svih ili relevantnih zapisa u tablici.
c) DCL (jezik za kontrolu podataka): Ovi se izrazi koriste za postavljanje privilegija kao što su GRANT i REVOKE dozvola pristupa bazi podataka određenom korisniku .
P # 4) Kako koristimo izraz DISTINCT? Koja je njegova upotreba?
Odgovor: Izraz DISTINCT koristi se s izrazom SELECT. Ako zapis sadrži dvostruke vrijednosti, tada se izraz DISTINCT koristi za odabir različitih vrijednosti među duplikatima zapisa.
Sintaksa:
SELECT DISTINCT column_name(s) FROM table_name;
P # 5) Koje su različite klauzule koje se koriste u SQL-u?
Odgovor:
Klauzula WHERE: Ova se klauzula koristi za definiranje stanja, izdvajanje i prikaz samo onih zapisa koji ispunjavaju zadani uvjet.
Sintaksa:
SELECT column_name(s) FROM table_name WHERE condition;
Klauzula GROUP BY: Koristi se s naredbom SELECT za grupiranje rezultata izvršenog upita koristeći vrijednost navedenu u njemu. Usklađuje vrijednost s nazivom stupca u tablicama i prema tome grupira krajnji rezultat.
Daljnje čitanje => MySQL grupa prema vodiču
Sintaksa:
SELECT column_name(s) FROM table_name GROUP BY column_name;
Klauzula HAVING: Ova se klauzula koristi zajedno s klauzulom GROUP BY. Primjenjuje se na svaku skupinu rezultata ili na cijeli rezultat kao jednu skupinu. Puno je sličan klauzuli WHERE, ali jedina je razlika što je ne možete koristiti bez klauzule GROUP BY
Sintaksa:
SELECT column_name(s) FROM table_name GROUP BY column_name HAVING condition;
Klauzula ORDER BY: Ova se klauzula koristi za definiranje redoslijeda izlaza upita u rastućem (ASC) ili silaznom (DESC). Rastući (ASC) postavljen je kao zadani, ali silazni (DESC) postavljen je izričito.
Sintaksa:
SELECT column_name(s) FROM table_name WHERE condition ORDER BY column_name ASC|DESC;
Klauzula USING: Klauzula USING koristi se tijekom rada s SQL JOIN-om. Koristi se za provjeru jednakosti na temelju stupaca kada se spajaju tablice. Može se koristiti umjesto klauzule ON u JOIN.
Sintaksa:
SELECT column_name(s) FROM table_name JOIN table_name USING (column_name);
P # 6) Zašto koristimo SQL ograničenja? Koja ograničenja možemo koristiti prilikom stvaranja baze podataka u SQL-u?
Odgovor: Ograničenja se koriste za postavljanje pravila za sve zapise u tablici. Ako se prekrše neka ograničenja, ona može prekinuti radnju koja ju je uzrokovala.
Ograničenja se definiraju tijekom stvaranja same baze podataka s izrazom CREATE TABLE ili čak i nakon što se tablica jednom kreira s izrazom ALTER TABLE.
Postoji 5 glavnih ograničenja koja se koriste u SQL-u, kao što su
- NIJE NULTA: To ukazuje na to da stupac mora imati neku vrijednost i ne može se ostaviti NULL.
- JEDINSTVENO: Ovo se ograničenje koristi kako bi se osiguralo da svaki redak i stupac imaju jedinstvenu vrijednost i da se niti jedna vrijednost ne ponavlja u bilo kojem drugom retku ili stupcu.
- OSNOVNI KLJUČ: Ovo se ograničenje koristi u vezi s ograničenjima NOT NULL i UNIQUE, poput jednog ili kombinacije više od jednog stupca za identificiranje određenog zapisa s jedinstvenim identitetom.
- STRANI KLJUC: Koristi se za osiguravanje referentne cjelovitosti podataka u tablici. Vrijednost u jednoj tablici podudara se s drugom pomoću PRIMARNOG KLJUČA.
- ČEK: Osigurava ispunjava li vrijednost u stupcima navedeni uvjet.
P # 7) Koji su različiti JOINS koji se koriste u SQL-u?
Odgovor:
Tijekom rada na više tablica u SQL bazama podataka koriste se 4 glavne vrste pridruživanja:
UNUTARNJE PRIDRUŽIVANJE: Poznat je i pod nazivom SIMPLE JOIN koji vraća sve retke iz OBA tablice kada ima barem jedan odgovarajući stupac.
Sintaksa:
SELECT column_name(s) FROM table_name1 INNER JOIN table_name2 ON column_name1=column_name2;
Na primjer,
U ovom primjeru imamo tablicu Zaposlenik sa sljedećim podacima:
Naziv druge tablice je Pridruživanje.
Unesite sljedeći SQL izraz:
SELECT Employee.Emp_id, Joining.Joining_Date FROM Employee INNER JOIN Joining ON Employee.Emp_id = Joining.Emp_id ORDER BY Employee.Emp_id;
Odabrat će se 4 zapisa. Rezultati su:
Zaposlenik i Narudžbe tablice imaju podudaranje customer_id vrijednost.
LIJEVO PRIDRUŽIVANJE (LIJEVO VANJSKO PRIDRUŽIVANJE): Ovo pridruživanje vraća sve retke iz LIJEVE tablice i odgovarajuće retke iz DESNE tablice .
Sintaksa:
SELECT column_name(s) FROM table_name1 LEFT JOIN table_name2 ON column_name1=column_name2;
Na primjer,
U ovom primjeru imamo tablicu Zaposlenik sa sljedećim podacima:
Naziv druge tablice je Pridruživanje.
Unesite sljedeći SQL izraz:
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;
Odabrat će se 4 zapisa. Vidjet ćete sljedeće rezultate:
DESNO PRIDRUŽIVANJE (DESNO VANJSKO PRIDRUŽIVANJE): Ovo spajanje vraća sve retke iz tablice DESNO i odgovarajuće retke iz tablice LIJEVO .
Sintaksa:
SELECT column_name(s) FROM table_name1 RIGHT JOIN table_name2 ON column_name1=column_name2;
Na primjer,
U ovom primjeru imamo tablicu Zaposlenik sa sljedećim podacima:
Naziv druge tablice je Pridruživanje.
Unesite sljedeći SQL izraz:
SELECT Employee.Emp_id, Joining.Joining_Date FROM Employee RIGHT JOIN Joining ON Employee.Emp_id = Joining.Emp_id ORDER BY Employee.Emp_id;
Izlaz:
Emp_id | Datum pridruženja |
---|---|
E0012 | 18.04.2016 |
E0013 | 19.04.2016 |
E0014 | 01.05.2016 |
FULL JOIN (FULL OUTER JOIN): Ovo pridruživanje vraća sve rezultate kada postoji podudaranje bilo u DESNOJ tablici ili u LIJEVOJ tablici .
Sintaksa:
SELECT column_name(s) FROM table_name1 FULL OUTER JOIN table_name2 ON column_name1=column_name2;
Na primjer,
U ovom primjeru imamo tablicu Zaposlenik sa sljedećim podacima:
Naziv druge tablice je Pridruživanje.
Unesite sljedeći SQL izraz:
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;
Bit će izabrano 8 zapisa. Ovo su rezultati koje biste trebali vidjeti.
DO Također pročitajte => MySQL Pridružite se vodiču
P # 8) Što su transakcije i njihove kontrole?
Odgovor: Transakcija se može definirati kao zadatak sekvence koji se na bazama podataka izvodi na logičan način radi postizanja određenih rezultata. Operacije poput stvaranja, ažuriranja i brisanja zapisa izvedenih u bazi podataka dolaze iz transakcija.
Jednostavnim riječima možemo reći da transakcija znači skup SQL upita izvršenih na zapisima baze podataka.
Postoje 4 kontrole transakcija kao što su
- POČINITI : Koristi se za spremanje svih promjena izvršenih kroz transakciju.
- VRAĆANJE : Koristi se za vraćanje transakcije. Sve promjene izvršene transakcijom vraćaju se natrag, a baza podataka ostaje kao i prije.
- POSTAVITE TRANSAKCIJU : Postavite naziv transakcije.
- SAVEPOINT: Koristi se za postavljanje točke na kojoj će se transakcija vratiti.
P # 9) Koja su svojstva transakcije?
Odgovor: Svojstva transakcije poznata su kao ACID svojstva. Ovi su:
- Valentnost : Osigurava cjelovitost svih izvršenih transakcija. Provjerava je li svaka transakcija uspješno dovršena ili ne. Ako nije, tada se transakcija prekida na mjestu neuspjeha i prethodna se transakcija vraća u početno stanje jer su promjene poništene.
- Dosljednost : Osigurava da se sve promjene izvršene uspješnim transakcijama pravilno odražavaju u bazi podataka.
- Izolacija : Osigurava da se sve transakcije izvršavaju neovisno, a promjene izvršene jednom transakcijom neće se odraziti na druge.
- Izdržljivost : Osigurava da se promjene izvršene u bazi podataka s izvršenim transakcijama nastave, kao i nakon kvara sustava.
P # 10) Koliko je agregatnih funkcija dostupno u SQL-u?
Odgovor: SQL agregatne funkcije određuju i izračunavaju vrijednosti iz više stupaca u tablici i vraćaju jednu vrijednost.
U SQL-u postoji 7 skupnih funkcija:
- AVG (): Vraća prosječnu vrijednost iz navedenih stupaca.
- RAČUNATI(): Vraća broj redaka tablice.
- MAX (): Vraća najveću vrijednost među zapisima.
- MIN (): Vraća najmanju vrijednost među zapisima.
- IZNOS(): Vraća zbroj navedenih vrijednosti stupaca.
- PRVI(): Vraća prvu vrijednost.
- POSLJEDNJI(): Vraća zadnju vrijednost.
P # 11) Što su skalarne funkcije u SQL-u?
Odgovor: Skalarne funkcije koriste se za vraćanje jedne vrijednosti na temelju ulaznih vrijednosti.
Skalarne funkcije su sljedeće:
- UCASE (): Pretvara navedeno polje u velika slova.
- LCASE (): Pretvara navedeno polje malim slovima.
- SREDNJI (): Izvlači i vraća znak iz tekstualnog polja.
- FORMAT(): Određuje format prikaza.
- LEN (): Određuje duljinu tekstualnog polja.
- KRUG(): Zaokružuje vrijednost decimalnog polja na broj.
P # 12) Što su okidači ?
Odgovor: Okidači u SQL-u vrsta su pohranjenih procedura koje se koriste za stvaranje odgovora na određenu radnju izvedenu na tablici, poput INSERT, UPDATE ili DELETE. Okidače možete izričito pozivati na tablici u bazi podataka.
Akcija i događaj dvije su glavne komponente SQL okidača. Kada se izvrše određene radnje, događaj se javlja kao odgovor na tu radnju.
Sintaksa:
CREATE TRIGGER name BEFORE (event [OR..]} ON table_name [FOR [EACH] ROW] EXECUTE PROCEDURE functionname {arguments}
P # 13) Što je Pogled u SQL-u?
Odgovor: Pogled se može definirati kao virtualna tablica koja sadrži retke i stupce s poljima iz jedne ili više tablica.
S sintaksa:
CREATE VIEW view_name AS SELECT column_name(s) FROM table_name WHERE condition
P # 14) Kako možemo ažurirati prikaz?
Odgovor: SQL CREATE i REPLACE mogu se koristiti za ažuriranje pogleda.
Izvršite upit u nastavku da biste ažurirali stvoreni prikaz.
Sintaksa:
CREATE OR REPLACE VIEW view_name AS SELECT column_name(s) FROM table_name WHERE condition
P # 15) Objasnite rad SQL privilegija?
Odgovor: SQL GRANT i REVOKE naredbe koriste se za implementaciju privilegija u SQL više korisničkih okruženja. Administrator baze podataka može dodijeliti ili opozvati privilegije korisnicima ili korisnicima objekata baze podataka pomoću naredbi poput SELECT, INSERT, UPDATE, DELETE, ALL, itd.
DODATI naredbu : Ova se naredba koristi za pružanje pristupa bazi podataka korisnicima koji nisu administrator.
Sintaksa:
GRANT privilege_name ON object_name TO PUBLIC [WITH GRANT OPTION];
U gornjoj sintaksi, opcija GRANT označava da korisnik može odobriti pristup i drugom korisniku.
Naredba REVOKE : Ova se naredba koristi za omogućavanje odbijanja baze podataka ili uklanjanja pristupa objektima baze podataka.
Sintaksa:
REVOKE privilege_name ON object_name FROM PUBLIC;
P # 16) Koliko je vrsta privilegija dostupno u SQL-u?
Odgovor: Postoje dvije vrste privilegija koje se koriste u SQL-u, poput
- Privilegije sustava: Povlastica sustava bavi se objektom određene vrste i pruža korisnicima pravo izvršenja jedne ili više radnji na njemu. Te radnje uključuju izvršavanje administrativnih zadataka, ALTER BILO KOJI INDEKS, ALTER BILO KOJA GRUPA PREDMETA STVORI / IZMIJENI / BRISI TABLICU, IZRADI / IZMIJENI / BRISI PRIKAZ itd.
- Privilegija objekta: To omogućuje izvršavanje radnji na objektu ili objektu drugog korisnika, odnosno. tablica, prikaz, indeksi itd. Neke od privilegija objekta su EXECUTE, INSERT, UPDATE, DELETE, SELECT, FLUSH, LOAD, INDEX, REFERENCES itd.
P # 17) Što je SQL Injection?
Odgovor: SQL Injection je vrsta tehnike napada baze podataka gdje se zlonamjerni SQL izrazi ubacuju u polje za unos baze podataka na način da se jednom izvrši, baza podataka izloži napadaču za napad. Ova se tehnika obično koristi za napad na aplikacije vođene podacima kako bi imale pristup osjetljivim podacima i izvršavale administrativne zadatke u bazama podataka.
Na primjer,
SELECT column_name(s) FROM table_name WHERE condition;
P # 18) Što je SQL Sandbox u SQL Serveru?
Odgovor: SQL Sandbox je sigurno mjesto u okruženju SQL poslužitelja gdje se izvršavaju nepouzdane skripte. Postoje 3 vrste SQL okruženja:
- Sandbox sigurnog pristupa: Ovdje korisnik može izvoditi SQL operacije kao što je stvaranje pohranjenih procedura, okidača itd., Ali ne može imati pristup memoriji, kao ni stvaranje datoteka.
- Vanjski pristupni okvir: Korisnici mogu pristupiti datotekama bez prava na manipulaciju dodjelom memorije.
- Pješčana kutija za nesigurni pristup: Sadrži nepouzdane kodove gdje korisnik može imati pristup memoriji.
P # 19) Koja je razlika između SQL i PL / SQL?
Odgovor: SQL je strukturirani jezik upita za stvaranje i pristup bazama podataka, dok PL / SQL dolazi s proceduralnim konceptima programskih jezika.
P # 20) Koja je razlika između SQL i MySQL?
Odgovor: SQL je jezik strukturiranih upita koji se koristi za manipulaciju i pristup relacijskoj bazi podataka. S druge strane, MySQL je sam relacijska baza podataka koja koristi SQL kao standardni jezik baze podataka.
P # 21) Čemu služi NVL funkcija?
Odgovor: NVL funkcija koristi se za pretvaranje null vrijednosti u njezinu stvarnu vrijednost.
P # 22) Koji je kartezijanski proizvod tablice?
Odgovor: Izlaz Cross Join naziva se kartezijanskim proizvodom. Vraća retke kombinirajući svaki redak iz prve tablice sa svakim retkom druge tablice. Na primjer, ako spojimo dvije tablice s 15 i 20 stupaca, kartezijanski proizvod dviju tablica bit će 15 × 20 = 300 redaka.
P # 23) Što podrazumijevate pod podupitom?
Odgovor: Upit unutar drugog upita naziva se Podupit. Podupit se naziva unutarnji upit koji vraća izlaz koji treba koristiti drugi upit.
P # 24) Koliko se operatora za usporedbu redova koristi tijekom rada s podupitom?
Odgovor: Postoje operatori usporedbe s 3 reda koji se koriste u podupitima kao što su IN, ANY i ALL.
P # 25) Koja je razlika između klasteriziranih i neklasteriziranih indeksa?
Odgovor: Razlike između njih dvije su sljedeće:
- Jedna tablica može imati samo jedan klasterirani indeks, ali više neklasteriziranih indeksa.
- Klasterizirani indeksi mogu se čitati brzo, a ne neklasterizirani indeksi.
- Klasterizirani indeksi fizički pohranjuju podatke u tablicu ili prikaz, dok neklasterizirani indeksi ne pohranjuju podatke u tablicu jer ima zasebnu strukturu od retka podataka.
P # 26) Koja je razlika između DELETE i TRUNCATE?
Odgovor: Razlike su:
- Osnovna razlika u obje je naredba DELETE je naredba DML, a naredba TRUNCATE DDL.
- Naredba DELETE koristi se za brisanje određenog retka iz tablice, dok se naredba TRUNCATE koristi za uklanjanje svih redaka iz tablice.
- Naredbu DELETE možemo koristiti s klauzulom WHERE, ali s njom ne možemo koristiti naredbu TRUNCATE.
P # 27) Koja je razlika između DROP i TRUNCATE?
Odgovor: TRUNCATE uklanja sve retke iz tablice koji se ne mogu vratiti, DROP uklanja cijelu tablicu iz baze podataka, a također se ne može vratiti.
P # 28) Kako napisati upit za prikaz detalja učenika iz tablice Studenti čiji
ime započinje s K?
Odgovor: Upit:
SELECT * FROM Student WHERE Student_Name like ‘K%’;
Ovdje se operator 'sviđa' koristi za izvođenje podudaranja uzoraka.
P # 29) Koja je razlika između ugniježđenih podupita i koreliranih podupita?
Odgovor: Podupit unutar drugog podupita naziva se ugniježđeni podupit. Ako izlaz podupita ovisi o vrijednostima stupaca nadređene tablice upita, tada se upit naziva Korelirani podupit.
SELECT adminid(SELEC Firstname+' '+Lastname FROM Employee WHERE empid=emp. adminid)AS EmpAdminId FROM Employee;
Rezultat upita su detalji zaposlenika iz tablice zaposlenika.
P # 30) Što je normalizacija? Koliko obrazaca za normalizaciju postoji?
Odgovor: Normalizacija se koristi za organizaciju podataka na takav način da se u bazi podataka nikada neće pojaviti suvišak podataka i izbjeći anomalije umetanja, ažuriranja i brisanja.
Postoji 5 oblika normalizacije:
- Prvi uobičajeni obrazac (1NF): Uklanja iz tablice sve dvostruke stupce. Stvara tablicu za povezane podatke i identificira jedinstvene vrijednosti stupaca.
- Prvi uobičajeni obrazac (2NF): Slijedi 1NF i stvara i smješta podskupove podataka u pojedinu tablicu i definira odnos između tablica pomoću primarnog ključa.
- Treći uobičajeni obrazac (3NF): Slijedi 2NF i uklanja one stupce koji nisu povezani putem primarnog ključa.
- Četvrti uobičajeni obrazac (4NF): Slijedi 3NF i ne definira ovisnosti s više vrijednosti. 4NF je također poznat i kao BCNF.
P # 31) Što je odnos? Koliko vrsta veza postoji?
Odgovor: Odnos se može definirati kao veza između više tablica u bazi podataka.
sql upiti uvježbavaju pitanja s odgovorima
Postoje 4 vrste odnosa:
- Odnos jedan prema jedan
- Odnos mnogi prema jednom
- Odnos mnogi prema mnogima
- Odnos jedan prema mnogima
P # 32) Što podrazumijevate pod pohranjenim postupcima? Kako ga koristimo?
Odgovor: Pohranjena procedura je zbirka SQL izraza koja se može koristiti kao funkcija za pristup bazi podataka. Ove pohranjene procedure možemo stvoriti ranije prije nego što ih upotrijebimo i možemo ih izvršiti gdje god je to potrebno primjenom neke uvjetne logike. Pohranjeni postupci također se koriste za smanjenje mrežnog prometa i poboljšanje performansi.
Sintaksa:
CREATE Procedure Procedure_Name ( //Parameters ) AS BEGIN SQL statements in stored procedures to update/retrieve records END
P # 33) Navedite neka svojstva relacijskih baza podataka?
Odgovor: Svojstva su sljedeća:
- U relacijskim bazama podataka svaki stupac trebao bi imati jedinstveno ime.
- Slijed redaka i stupaca u relacijskim bazama podataka je beznačajan.
- Sve su vrijednosti atomske i svaki je redak jedinstven.
P # 34) Što su ugniježđeni okidači?
Odgovor: Okidači mogu implementirati logiku izmjene podataka pomoću izraza INSERT, UPDATE i DELETE. Ovi okidači koji sadrže logiku izmjene podataka i pronalaze druge okidače za izmjenu podataka nazivaju se ugniježđeni okidači.
P # 35) Što je pokazivač?
Odgovor: Kursor je objekt baze podataka koji se koristi za manipulaciju podacima na način reda u red.
Pokazivač slijedi korake kako je navedeno u nastavku:
- Izjavi pokazivač
- Otvoreni kursor
- Dohvaćanje retka iz pokazivača
- Obradite red
- Zatvori kursor
- Dodijelite pokazivač
P # 36) Što je usporedba?
Odgovor: Poredak je skup pravila koja provjeravaju kako se podaci sortiraju uspoređujući ih. Kao što su podaci o znakovima, pohranjuju se pomoću ispravnog slijeda znakova, uz osjetljivost na velika i mala slova, vrstu i naglasak.
P # 37) Što trebamo provjeriti u testiranju baze podataka?
Odgovor: U testiranju baze podataka potrebno je testirati sljedeće:
- Povezivanje baze podataka
- Provjera ograničenja
- Potrebno polje aplikacije i njegova veličina
- Dohvat podataka i obrada DML operacijama
- Pohranjeni postupci
- Funkcionalni tok
P # 38) Što je testiranje bijele kutije baze podataka?
Odgovor: Ispitivanje bijele kutije baze podataka uključuje:
- Konzistentnost baze podataka i svojstva ACID
- Okidači baze podataka i logički prikazi
- Pokrivenost odlukama, pokrivenost stanja i pokrivenost izjavama
- Tablice baze podataka, model podataka i shema baze podataka
- Referentna pravila integriteta
P # 39) Što je ispitivanje crnog okvira baze podataka?
Odgovor: Testiranje crne kutije baze podataka uključuje:
- Mapiranje podataka
- Podaci pohranjeni i dohvaćeni
- Korištenje tehnika ispitivanja crne kutije poput ekvivalentne podjele i analize granične vrijednosti (BVA)
P # 40) Što su indeksi u SQL-u?
Odgovor: Indeks se može definirati kao način bržeg pristupa podacima. Indekse možemo definirati pomoću izraza CREATE.
Sintaksa:
CREATE INDEX index_name ON table_name (column_name)
Nadalje, također možemo stvoriti jedinstveni indeks koristeći sljedeću sintaksu:
CREATE UNIQUE INDEX index_name ON table_name (column_name)
AŽURIRAJ: Dodali smo još nekoliko kratkih pitanja za vježbu.
P # 41) Što znači SQL?
Odgovor: SQL je kratica za Strukturirani jezik upita .
P # 42) Kako odabrati sve zapise iz tablice?
Odgovor: Za odabir svih zapisa iz tablice trebamo koristiti sljedeću sintaksu:
Select * from table_name;
P # 43) Definirajte pridruživanje i imenujte različite vrste pridruživanja?
Odgovor: Ključna riječ join koristi se za dohvaćanje podataka iz dvije ili više povezanih tablica. Vraća retke u kojima postoji barem jedno podudaranje u obje tablice uključene u pridruživanje. Više pročitajte ovdje .
Vrsta pridruživanja su:
- Desno se pridruži
- Vanjsko pridruživanje
- Potpuno pridruživanje
- Unakrsno spajanje
- Samostalno se pridruži.
P # 44) Koja je sintaksa za dodavanje zapisa u tablicu?
Odgovor: Za dodavanje zapisa u tablicu koristi se INSERT sintaksa.
Na primjer,
INSERT into table_name VALUES (value1, value2..);
P # 45) Kako dodati stupac u tablicu?
Odgovor: Da biste dodali još jedan stupac u tablicu, upotrijebite sljedeću naredbu:
ALTER TABLE table_name ADD (column_name);
Preporučena literatura = >> Kako dodaj stupac u tablicu u MySQL-u
P # 46) Definirajte SQL DELETE izraz.
Odgovor: DELETE koristi se za brisanje retka ili redaka iz tablice na temelju navedenog stanja.
Osnovna sintaksa je sljedeća:
DELETE FROM table_name WHERE
P # 47) Definirajte COMMIT?
Odgovor: COMMIT sprema sve promjene napravljene DML izjavama.
P # 48) Što je Primarni ključ?
Odgovor: Primarni ključ je stupac čije vrijednosti jedinstveno identificiraju svaki redak u tablici. Vrijednosti primarnog ključa nikada se ne mogu ponovno upotrijebiti.
P # 49) Što su strani ključevi?
Odgovor: Kada se polje primarnog ključa tablice doda povezanim tablicama kako bi se stvorilo zajedničko polje koje povezuje dvije tablice, u drugim se tablicama poziva strani ključ. Ograničenja stranih ključeva nameću referencijalni integritet.
P # 50) Što je CHECK Constraint?
Odgovor: Ograničenje CHECK koristi se za ograničavanje vrijednosti ili vrste podataka koji se mogu pohraniti u stupac. Koriste se za jačanje integriteta domene.
P # 51) Je li moguće da tablica ima više od jednog stranog ključa?
Odgovor: Da, tablica može imati mnogo stranih ključeva, ali samo jedan primarni ključ.
P # 52) Koje su moguće vrijednosti za polje podataka BOOLEAN?
Odgovor: Za polje podataka BOOLEAN moguće su dvije vrijednosti: -1 (true) i 0 (false).
P # 53) Što je pohranjena procedura?
Odgovor: Pohranjena procedura je skup SQL upita koji mogu uzimati ulaz i vraćati izlaz.
P # 54) Što je identitet u SQL-u?
Odgovor: Stupac identiteta u kojem SQL automatski generira numeričke vrijednosti. Možemo definirati početnu i inkrementalnu vrijednost stupca identiteta.
P # 55) Što je normalizacija?
Odgovor: Postupak dizajniranja tablice radi smanjenja suvišnosti podataka naziva se normalizacija. Moramo podijeliti bazu podataka u dvije ili više tablica i definirati odnos između njih.
P # 56) Što je okidač?
Odgovor: Okidač nam omogućuje izvršavanje serije SQL koda kada se dogodi događaj tablice (naredbe INSERT, UPDATE ili DELETE izvršavaju se prema određenoj tablici).
P # 57) Kako odabrati slučajne retke iz tablice?
Odgovor: Pomoću klauzule SAMPLE možemo odabrati slučajne retke.
Na primjer,
SELECT * FROM table_name SAMPLE(10);
P # 58) Koji TCP / IP port radi SQL Server?
Odgovor: Prema zadanim postavkama SQL Server radi na priključku 1433.
P # 59) Napišite SQL SELECT upit koji samo jedno ime vraća samo jednom iz tablice?
Odgovor: Da bismo rezultat dobili kao svako ime samo jednom, moramo upotrijebiti ključnu riječ DISTINCT.
SELECT DISTINCT name FROM table_name;
P # 60) Objasnite DML i DDL?
Odgovor: DML je skraćenica od Data Manipulation Language. INSERT, UPDATE i DELETE su DML izrazi.
DDL je skraćenica od Data Definition Language. CREATE, ALTER, DROP, RENAME su DDL izjave.
P # 61) Možemo li preimenovati stupac u izlazu SQL upita?
Odgovor: Da, pomoću sljedeće sintakse to možemo učiniti.
SELECT column_name AS new_name FROM table_name;
P # 62) Dajte redoslijed SQL SELECT?
Odgovor: Redoslijed SQL SELECT klauzula je: SELECT, FROM, WHERE, GROUP BY, HAVING, ORDER BY. Obavezne su samo klauzule SELECT i FROM.
P # 63) Pretpostavimo da učenički stupac ima dva stupca, Ime i Oznake. Kako doći do imena i oznaka prva tri učenika.
Odgovor: ODABERI Ime, Oznake OD Učenika s1 gdje je 3<= (SELECT COUNT(*) FROM Students s2 WHERE s1.marks = s2.marks)
P # 64) Što su SQL komentari?
Odgovor: SQL komentari mogu se umetnuti dodavanjem dvije uzastopne crtice (-).
P # 65) Razlika između naredbi TRUNCATE, DELETE i DROP?
Odgovor:
- IZBRISATI uklanja neke ili sve retke iz tablice na temelju stanja. Može se vratiti.
- SKRATITI uklanja SVE retke iz tablice uklanjanjem alokacije memorijskih stranica. Operacija se ne može vratiti
- PAD naredba u potpunosti uklanja tablicu iz baze podataka.
P # 66) Koja su svojstva transakcije?
Odgovor: Općenito se ta svojstva nazivaju ACID svojstvima. Oni su:
- Valentnost
- Dosljednost
- Izolacija
- Izdržljivost.
P # 67) Što podrazumijevate pod ROWID?
Odgovor: To je pseudo stupac dug 18 znakova pričvršćen uz svaki redak tablice.
P # 68) Definirajte UNION, MINUS, UNION ALL, INTERSECT?
Odgovor:
- MINUS - vraća sve različite retke odabrane prvim upitom, ali ne i drugim.
- UNIJA - vraća sve različite retke odabrane bilo kojim upitom
- SAVEZ SVE - vraća sve retke odabrane bilo kojim upitom, uključujući sve duplikate.
- INTERSECT - vraća sve različite retke odabrane u oba upita.
P # 69) Što je transakcija?
Odgovor: Transakcija je slijed koda koji se pokreće protiv baze podataka. Baza podataka prelazi iz jednog konzistentnog stanja u drugo.
P # 70) Koja je razlika između UNIKATNIH i PRIMARNIH KLJUČNIH ograničenja?
Odgovor: Razlike su sljedeće:
- Tablica može imati samo jedan PRIMARNI KLJUČ dok UNIQUE ključeva može biti bilo koji broj.
- Primarni ključ ne može sadržavati null vrijednosti, dok jedinstveni ključ može sadržavati null vrijednosti.
P # 71) Što je kompozitni primarni ključ?
Odgovor: Primarni ključ stvoren na više stupaca naziva se složeni primarni ključ.
P # 72) Što je indeks?
Odgovor: Indeks je posebna struktura povezana s tablicom kako bi se ubrzala izvedba upita. Indeks se može stvoriti na jednom ili više stupaca tablice.
P # 73) Što je podupit?
Odgovor: Podupit je podskup odabranih izraza čije se povratne vrijednosti koriste u uvjetima filtriranja glavnog upita.
P # 74) Što podrazumijevate pod optimizacijom upita?
Odgovor: Optimizacija upita postupak je u kojem sustav baze podataka uspoređuje različite strategije upita i odabire upit s najmanje troškova.
P # 75) Što je usporedba?
Odgovor: Skup pravila koja definiraju kako se podaci pohranjuju, kako se može postupati s osjetljivošću na velika i mala slova i kana znakom itd.
P # 76) Što je referentna cjelovitost?
Odgovor: Skup pravila koja ograničavaju vrijednosti jednog ili više stupaca tablica na temelju vrijednosti primarnog ključa ili jedinstvenog ključa referencirane tablice.
P # 77) Koja je funkcija Case?
Odgovor: Case olakšava logiku if-then-else u SQL-u. Procjenjuje popis uvjeta i vraća jedan od više mogućih izraza rezultata.
P # 78) Definirajte privremenu tablicu?
Odgovor: Privremena tablica privremena je struktura za pohranu podataka koja privremeno pohranjuje podatke.
P # 79) Kako možemo izbjeći dupliciranje zapisa u upitu?
Odgovor: Korištenjem ključne riječi DISTINCT može se izbjeći dupliciranje zapisa u upitu.
P # 80) Objasnite razliku između preimenovanja i zamjenskog imena?
Odgovor: Preimenovanje je trajno ime dato tablici ili stupcu, dok je Alias privremeno ime tablici ili stupcu.
P # 81) Što je pogled?
Odgovor: Pogled je virtualna tablica koja sadrži podatke iz jedne ili više tablica. Prikazi ograničavaju pristup podacima tablice odabirom samo potrebnih vrijednosti i olakšavaju složene upite.
P # 82) Koje su prednosti Viewsa?
Odgovor: Prednosti pogleda su:
- Prikazi ograničavaju pristup podacima jer pogled može prikazivati selektivne stupce iz tablice.
- Pogledi se mogu koristiti za izradu jednostavnih upita za dobivanje rezultata složenih upita. Na primjer, pogledi se mogu koristiti za traženje podataka iz više tablica, a da korisnik to ne zna.
P # 83) Navedite razne povlastice koje korisnik može dodijeliti drugom korisniku?
Odgovor: ODABIR, POVEZIVANJE, RESURSI.
P # 84) Što je shema?
Odgovor: Shema je zbirka objekata baze podataka korisnika.
P # 85) Što je tablica?
Odgovor: Tablica je osnovna jedinica za pohranu podataka u sustavu upravljanja bazom podataka. Podaci tablice pohranjuju se u retke i stupce.
P # 86) Sadrži li pogled podatke?
Odgovor: Ne, pogledi su virtualne strukture.
P # 87) Može li se pogled temeljiti na drugom pogledu?
Odgovor: Da, pogled se temelji na drugom pogledu.
P # 88) Koja je razlika između klauzule HAVING i klauzule WHERE?
Odgovor: Obje specificiraju uvjet pretraživanja, ali klauzula Have koristi se samo s naredbom SELECT i obično se koristi s klauzulom GROUP BY.
Ako se ne koristi klauzula GROUP BY, ponašajući se kao samo WHERE klauzula.
P # 89) Koja je razlika između lokalnih i globalnih privremenih tablica?
Odgovor: Ako se definira unutar složenog izraza, lokalna privremena tablica postoji samo za vrijeme trajanja te izjave, ali globalna privremena tablica postoji trajno u DB-u, ali njezini retci nestaju kad se veza zatvori.
P # 90) Što je CTE?
Odgovor: CTE ili uobičajeni izraz tablice izraz je koji sadrži privremeni skup rezultata koji je definiran u SQL izrazu.
Zaključak
SQL je bitna komponenta sustava baza podataka. Dobro poznavanje baze podataka zajedno s konceptima SQL-a definitivno će biti korisno za provjeru intervjua za dotični profil.
Osim nekih glavnih koncepata, postoje neke skrivene činjenice koje ostaju nevidljive i utječu na vaš nastup u intervjuu. U ovom uputstvu pokušao sam se prisjetiti nekih koncepata koji se čine malim, ali ih ne treba zanemariti.
Nadamo se da ćete u ovom članku pronaći odgovore na najčešće postavljana pitanja o SQL intervjuu. Poznavanje SQL-a neophodno je za bilo kojeg ispitivača, a ovaj će vam članak pomoći u pripremi intervjua.
Daljnje čitanje => Sve o testiranju baze podataka
Preporučena literatura
- Intervjuirajte pitanja i odgovore
- Najčešća pitanja za intervju za Oracle: Oracle Basic, SQL, PL / SQL pitanja
- 30 najvažnijih pitanja i odgovora na PL / SQL intervjue 2021. godine
- Pitanja i odgovori za ispitivanje ETL-a
- Najpopularnija pitanja i odgovori za intervjue Teradata
- Neka nezgodna ručna ispitivanja Pitanja i odgovori
- 25 najboljih agilnih testova za pitanja i odgovore na intervjue
- Spock intervju pitanja s odgovorima (najpopularnije)