Top 50 de întrebări și răspunsuri la interviul SQL (actualizare 2021)

Cuprins:

Anonim

SQL înseamnă Structured Query Language este un limbaj de programare specific domeniului pentru gestionarea datelor din sistemele de gestionare a bazelor de date. Abilitățile de programare SQL sunt extrem de dorite și necesare pe piață, deoarece există o utilizare masivă a sistemelor de gestionare a bazelor de date (SGBD) în aproape fiecare aplicație software. Pentru a obține un loc de muncă, candidații trebuie să spargă interviul în care li se adresează diverse întrebări de interviu SQL.

În continuare este prezentată o listă curatată de întrebări și răspunsuri la interviul SQL, care ar putea fi întrebat în timpul interviului SQL. Este posibil ca candidaților să li se pună întrebări de bază despre interviul SQL pentru a avansa întrebări SQL de nivel, în funcție de experiența lor și de alți factori. Lista de mai jos acoperă toate întrebările interviului SQL pentru începători, precum și întrebările interviului SQL pentru candidații cu nivel de experiență și unele întrebări interviului interogare SQL.

Întrebări SQL Interview Fișier PDF: Descărcați aici

Întrebări și răspunsuri la interviuri SQL frecvente pentru cei mai noi și cu experiență

1. Ce este SGBD?

Un sistem de gestionare a bazelor de date (SGBD) este un program care controlează crearea, întreținerea și utilizarea unei baze de date. SGBD poate fi denumit Manager de fișiere care gestionează datele într-o bază de date, mai degrabă decât să le salveze în sistemele de fișiere.

2. Ce este RDBMS?

RDBMS înseamnă Sistem de gestionare a bazelor de date relaționale. RDBMS stochează datele în colecția de tabele, care este legată de câmpurile comune dintre coloanele tabelului. De asemenea, oferă operatorilor relaționali să manipuleze datele stocate în tabele.

Exemplu: SQL Server.

3. Ce este SQL?

SQL înseamnă Structured Query Language și este folosit pentru a comunica cu baza de date. Acesta este un limbaj standard utilizat pentru a efectua sarcini precum recuperarea, actualizarea, inserarea și ștergerea datelor dintr-o bază de date.

Comenzile SQL standard sunt Select.

4. Ce este o bază de date?

Baza de date nu este altceva decât o formă organizată de date pentru acces facil, stocare, recuperare și gestionare a datelor. Aceasta este, de asemenea, cunoscută sub numele de formă structurată de date, care poate fi accesată în mai multe moduri.

Exemplu: baza de date pentru managementul școlii, baza de date pentru gestionarea băncilor.

5. Ce sunt tabelele și câmpurile?

Un tabel este un set de date care sunt organizate într-un model cu Coloane și Rânduri. Coloanele pot fi clasificate drept verticale, iar rândurile sunt orizontale. Un tabel are un număr specificat de coloane numite câmpuri, dar poate avea un număr de rânduri numit record.

Exemplu:.

Tabel: Angajat.

Câmp: ID Emp, Nume Emp, Data nașterii.

Date: 201456, David, 15.11.1960.

6. Ce este o cheie primară?

O cheie principală este o combinație de câmpuri care specifică în mod unic un rând. Acesta este un tip special de cheie unică și are o constrângere implicită NOT NULL. Înseamnă că valorile cheii primare nu pot fi NULL.

7. Ce este o cheie unică?

O constrângere cheie unică a identificat în mod unic fiecare înregistrare din baza de date. Aceasta oferă unicitate coloanei sau setului de coloane.

O constrângere cheie primară are definită o constrângere unică automată. Dar nu, în cazul cheii unice.

Pot exista multe constrângeri unice definite pe tabel, dar numai o constrângere cheie primară definită pe tabel.

8. Ce este o cheie străină?

O cheie străină este un tabel care poate fi legat de cheia primară a altui tabel. Relația trebuie creată între două tabele, referindu-se la cheia străină cu cheia primară a altui tabel.

9. Ce este unirea?

Acesta este un cuvânt cheie folosit pentru interogarea datelor din mai multe tabele pe baza relației dintre câmpurile tabelelor. Cheile joacă un rol major atunci când sunt utilizate JOIN-urile.

10. Care sunt tipurile de join și explică fiecare?

Există diferite tipuri de îmbinare care pot fi folosite pentru a prelua date și depinde de relația dintre tabele.

  • Alăturare interioară.

Rândurile de întoarcere ale îmbinării interioare atunci când există cel puțin o potrivire de rânduri între tabele.

  • Alăturați-vă corect.

Îmbinarea dreaptă rândurile de returnare care sunt comune între tabele și toate rândurile tabelului lateral din dreapta. Pur și simplu, returnează toate rândurile din tabelul din dreapta, chiar dacă nu există meciuri în tabelul din partea stângă.

  • Stânga Alăturați-vă.

Rândurile de întoarcere la stânga, care sunt comune între tabele și toate rândurile tabelului din partea stângă. Pur și simplu, returnează toate rândurile din tabelul din stânga, chiar dacă nu există meciuri în tabelul din partea dreaptă.

  • Alăturați-vă complet.

Alăturați complet rândurile de returnare atunci când există rânduri potrivite în oricare dintre tabele. Aceasta înseamnă că returnează toate rândurile din tabelul din stânga și toate rândurile din tabelul din dreapta.

11. Ce este normalizarea?

Normalizarea este procesul de minimizare a redundanței și dependenței prin organizarea câmpurilor și a tabelului unei baze de date. Scopul principal al normalizării este de a adăuga, șterge sau modifica câmpul care poate fi realizat într-un singur tabel.

12. Ce este denormalizarea.

DeNormalizarea este o tehnică utilizată pentru a accesa datele de la formele normale de bază de date mai mari la inferioare. Este, de asemenea, procesul de introducere a redundanței într-un tabel prin încorporarea datelor din tabelele aferente.

13. Care sunt toate normalizările diferite?

Formele normale pot fi împărțite în 5 forme și sunt explicate mai jos -.

  • Prima formă normală (1NF) :.

Aceasta ar trebui să elimine toate coloanele duplicate din tabel. Crearea de tabele pentru datele aferente și identificarea coloanelor unice.

  • A doua formă normală (2NF) :.

Satisfacerea tuturor cerințelor primului formular normal. Plasarea subseturilor de date în tabele separate și Crearea de relații între tabele folosind chei primare.

  • A treia formă normală (3NF) :.

Acest lucru ar trebui să îndeplinească toate cerințele 2NF. Eliminarea coloanelor care nu depind de constrângerile cheii primare.

  • A patra formă normală (4NF) :.

Îndeplinind toate cerințele celei de-a treia forme normale și nu ar trebui să aibă dependențe multivalente.

14. Ce este o vedere?

O vizualizare este un tabel virtual care constă dintr-un subset de date conținute într-un tabel. Vizualizările nu sunt practic prezente și necesită mai puțin spațiu pentru stocare. Vizualizarea poate avea date de unul sau mai multe tabele combinate și depinde de relație.

15. Ce este un index?

Un index este metoda de reglare a performanței care permite recuperarea mai rapidă a înregistrărilor din tabel. Un index creează o intrare pentru fiecare valoare și va fi mai rapid să extrageți date.

16. Care sunt toate diferitele tipuri de indici?

Există trei tipuri de indici -.

  • Index unic.

Această indexare nu permite câmpului să aibă valori duplicat dacă coloana este indexată unic. Indexul unic poate fi aplicat automat atunci când este definită cheia primară.

  • Index clusterizat.

Acest tip de index reordonează ordinea fizică a tabelului și căutarea pe baza valorilor cheie. Fiecare tabel poate avea un singur index grupat.

  • Indicele non-grupat.

NonClustered Index nu modifică ordinea fizică a tabelului și menține ordinea logică a datelor. Fiecare tabel poate avea 999 de indici necuplați.

17. Ce este un cursor?

Un cursor al bazei de date este un control care permite traversarea rândurilor sau înregistrărilor din tabel. Acesta poate fi văzut ca un pointer către un rând dintr-un set de rânduri. Cursorul este foarte util pentru parcurgere, cum ar fi recuperarea, adăugarea și eliminarea înregistrărilor bazei de date.

18. Ce este o relație și care sunt acestea?

Relația bazei de date este definită ca conexiunea dintre tabelele dintr-o bază de date. Există diverse relații de bazare a datelor și sunt după cum urmează :.

  • Relația unu la unu.
  • Relație de la unul la mai mulți.
  • Mulți la o relație.
  • Relația de auto-referință.

19. Ce este o interogare?

O interogare DB este un cod scris pentru a recupera informațiile din baza de date. Interogarea poate fi concepută în așa fel încât să se potrivească cu așteptările noastre privind setul de rezultate. Pur și simplu, o întrebare către baza de date.

20. Ce este subinterogarea?

O subinterogare este o interogare dintr-o altă interogare. Interogarea exterioară este numită ca interogare principală, iar interogarea interioară se numește subinterogare. SubQuery este întotdeauna executat mai întâi, iar rezultatul subinterogării este transmis la interogarea principală.

21. Care sunt tipurile de subinterogare?

Există două tipuri de interogări - corelate și necorelate.

O subinterogare corelată nu poate fi considerată ca o interogare independentă, dar poate face referire la coloana dintr-un tabel listat în lista FROM a interogării principale.

O interogare necorelată poate fi considerată ca o interogare independentă, iar rezultatul subinterogării este substituit în interogarea principală.

22. Ce este o procedură stocată?

Procedura stocată este o funcție care constă din mai multe instrucțiuni SQL pentru a accesa sistemul de baze de date. Mai multe instrucțiuni SQL sunt consolidate într-o procedură stocată și le execută ori de câte ori și oriunde este necesar.

23. Ce este un declanșator?

Un declanșator DB este un cod sau programe care se execută automat cu răspuns la un eveniment dintr-o masă sau vizualizare într-o bază de date. În principal, declanșatorul ajută la menținerea integrității bazei de date.

Exemplu: Când se adaugă un nou student la baza de date a studenților, ar trebui create noi înregistrări în tabelele aferente, cum ar fi tabelele de examen, scor și prezență.

24. Care este diferența dintre comenzile DELETE și TRUNCATE?

Comanda DELETE este utilizată pentru a elimina rândurile din tabel, iar clauza WHERE poate fi utilizată pentru setul condiționat de parametri. Commit și Rollback pot fi efectuate după declarația de ștergere.

TRUNCATE elimină toate rândurile din tabel. Trunchierea nu poate fi derulată înapoi.

25. Care sunt variabilele locale și globale și diferențele lor?

Variabilele locale sunt variabilele care pot fi utilizate sau există în interiorul funcției. Acestea nu sunt cunoscute de celelalte funcții și acele variabile nu pot fi referite sau utilizate. Variabilele pot fi create ori de câte ori este apelată acea funcție.

Variabilele globale sunt variabilele care pot fi utilizate sau există pe tot parcursul programului. Aceeași variabilă declarată în global nu poate fi utilizată în funcții. Variabilele globale nu pot fi create ori de câte ori este apelată acea funcție.

26. Ce este o constrângere?

Constrângerea poate fi utilizată pentru a specifica limita pentru tipul de date al tabelului. Constrângerea poate fi specificată în timpul creării sau modificării instrucțiunii tabelului. Exemple de constrângere sunt.

  • NU NUL.
  • VERIFICA.
  • MOD IMPLICIT.
  • UNIC.
  • CHEIA PRINCIPALA.
  • CHEIE EXTERNĂ.

27. Ce este integritatea datelor?

Integritatea datelor definește acuratețea și consistența datelor stocate într-o bază de date. De asemenea, poate defini constrângeri de integritate pentru a aplica regulile de afaceri asupra datelor atunci când acestea sunt introduse în aplicație sau în baza de date.

28. Ce este Incrementarea automată?

Cuvântul cheie cu increment automat permite utilizatorului să creeze un număr unic care să fie generat atunci când o nouă înregistrare este introdusă în tabel. Cuvântul cheie INCREMENT AUTO poate fi utilizat în Oracle, iar cuvântul cheie IDENTITATE poate fi utilizat în SQL SERVER.

În principal, acest cuvânt cheie poate fi folosit ori de câte ori este utilizată CHEIA PRIMARĂ.

29. Care este diferența dintre Indicele Cluster și Non-Cluster?

Indexul grupat este utilizat pentru extragerea cu ușurință a datelor din baza de date prin modificarea modului în care sunt stocate înregistrările. Baza de date sortează rândurile după coloana care este setată pentru a fi indexată în grup.

Un index non-grupat nu modifică modul în care a fost stocat, ci creează un obiect complet separat în tabel. Se îndreaptă spre rândurile originale ale tabelului după căutare.

30. Ce este Datawarehouse?

Datawarehouse este un depozit central de date din mai multe surse de informații. Aceste date sunt consolidate, transformate și puse la dispoziție pentru minerit și procesare online. Datele din depozit au un subset de date numit Data Marts.

31. Ce este Auto-Unirea?

Auto-join este setat să fie interogare folosită pentru a se compara cu sine. Aceasta este utilizată pentru a compara valorile dintr-o coloană cu alte valori din aceeași coloană din același tabel. ALIAS ES poate fi utilizat pentru aceeași comparație de tabel.

32. Ce este Cross-Join?

Îmbinarea încrucișată se definește ca produs cartezian în care numărul de rânduri din primul tabel înmulțit cu numărul de rânduri din al doilea tabel. Dacă presupunem, clauza WHERE este utilizată în cross join atunci interogarea va funcționa ca un INNER JOIN.

33. Ce sunt funcțiile definite de utilizator?

Funcțiile definite de utilizator sunt funcțiile scrise pentru a utiliza logica ori de câte ori este necesar. Nu este necesar să scrieți aceeași logică de mai multe ori. În schimb, funcția poate fi apelată sau executată ori de câte ori este necesar.

34. Care sunt toate tipurile de funcții definite de utilizator?

Sunt trei tipuri de funcții definite de utilizator.

  • Funcții scalare.
  • Funcții evaluate în tabelul în linie.
  • Funcții evaluate cu instrucțiuni multiple.

Scalar returnează unitatea, varianta a definit clauza return. Alte două tipuri returnează tabelul ca returnare.

35. Ce este colaționarea?

Colecționarea este definită ca un set de reguli care determină modul în care datele despre caractere pot fi sortate și comparate. Aceasta poate fi utilizată pentru a compara caracterele A și alte limbi și depinde, de asemenea, de lățimea caracterelor.

Valoarea ASCII poate fi utilizată pentru a compara aceste date despre caractere.

36. Care sunt toate tipurile diferite de sensibilitate la colaționare?

Următoarele sunt diferite tipuri de sensibilitate la colaționare -.

  • Sensibilitate între majuscule și minuscule - A și a și B și b.
  • Sensibilitate la accent.
  • Kana Sensitivity - caractere japoneze Kana.
  • Sensibilitate la lățime - caracter de octet unic și caracter de octet dublu.

37. Avantajele și dezavantajele procedurii stocate?

Procedura stocată poate fi utilizată ca programare modulară - înseamnă a crea o dată, a stoca și a apela de mai multe ori ori de câte ori este necesar. Acest lucru acceptă executarea mai rapidă în loc să execute mai multe interogări. Acest lucru reduce traficul de rețea și asigură o securitate mai bună a datelor.

Dezavantajul este că poate fi executat numai în baza de date și utilizează mai multă memorie în serverul bazei de date.

38. Ce este Procesarea tranzacțiilor online (OLTP)?

Procesarea tranzacțiilor online (OLTP) gestionează aplicațiile bazate pe tranzacții care pot fi utilizate pentru introducerea datelor, recuperarea datelor și procesarea datelor. OLTP face gestionarea datelor simplă și eficientă. Spre deosebire de sistemele OLAP, obiectivul sistemelor OLTP este de a servi tranzacții în timp real.

Exemplu - Tranzacții bancare zilnic.

39. Ce este CLAUZĂ?

Clauza SQL este definită pentru a limita setul de rezultate oferind condiția interogării. Aceasta filtrează de obicei unele rânduri din întregul set de înregistrări.

Exemplu - Interogare care are condiția WHERE

Interogare care are STARE.

40. Ce este procedura stocată recursiv?

O procedură stocată care apelează de la sine până când atinge o anumită condiție de graniță. Această funcție sau procedură recursivă îi ajută pe programatori să folosească același set de cod de câte ori.

41. Ce sunt comenzile Union, minus și Interact?

Operatorul UNION este folosit pentru a combina rezultatele a două tabele și elimină rândurile duplicate din tabele.

Operatorul MINUS este folosit pentru a returna rânduri din prima interogare, dar nu din a doua interogare. Înregistrările de potrivire ale primei și celei de-a doua interogări și ale altor rânduri din prima interogare vor fi afișate ca set de rezultate.

Operatorul INTERSECT este folosit pentru a returna rândurile returnate de ambele interogări.

42. Ce este o comandă ALIAS?

Numele ALIAS poate fi dat unui tabel sau unei coloane. Acest nume de alias poate fi menționat în clauza WHERE pentru a identifica tabelul sau coloana.

Exemplu-.

Select st.StudentID, Ex.Result from student st, Exam as Ex where st.studentID = Ex. StudentID

Aici, st se referă la numele de alias pentru tabelul elevului și Ex se referă la numele de alias pentru tabelul de examen.

43. Care este diferența dintre declarațiile TRUNCATE și DROP?

TRUNCATE elimină toate rândurile din tabel și nu poate fi derulat înapoi. Comanda DROP elimină un tabel din baza de date și operațiunea nu poate fi derulată înapoi.

44. Ce sunt funcțiile agregate și scalare?

Funcțiile agregate sunt utilizate pentru a evalua calculul matematic și a returna valori unice. Acest lucru poate fi calculat din coloanele dintr-un tabel. Funcțiile scalare returnează o singură valoare pe baza valorii de intrare.

Exemplu -.

Agregat - max (), număr - Calculat în raport cu numeric.

Scalar - UCASE (), ACUM () - Calculat în ceea ce privește șirurile.

45. Cum puteți crea un tabel gol dintr-un tabel existent?

Exemplul va fi -.

Select * into studentcopy from student where 1=2

Aici copiem tabelul studenților pe un alt tabel cu aceeași structură fără rânduri copiate.

46. ​​Cum se preluează înregistrări comune din două tabele?

Setul de rezultate al înregistrărilor comune poate fi atins prin -.

Select studentID from student INTERSECT Select StudentID from Exam

47. Cum se preluează înregistrări alternative dintr-un tabel?

Înregistrările pot fi preluate atât pentru numerele impare, cât și pentru numărul par -.

Pentru a afișa numere pare-.

Select studentId from (Select rowno, studentId from student) where mod(rowno,2)=0

Pentru a afișa numere impare-.

Select studentId from (Select rowno, studentId from student) where mod(rowno,2)=1

din (Selectați rowno, studentId de la student) unde mod (rowno, 2) = 1. [/ sql]

48. Cum se selectează înregistrări unice dintr-un tabel?

Selectați înregistrări unice dintr-un tabel utilizând cuvântul cheie DISTINCT.

Select DISTINCT StudentID, StudentName from Student.

49. Care este comanda folosită pentru a prelua primele 5 caractere ale șirului?

Există multe modalități de a prelua primele 5 caractere ale șirului -.

Select SUBSTRING(StudentName,1,5) as studentname from student
Select LEFT(Studentname,5) as studentname from student

50. Care operator este utilizat în interogare pentru potrivirea modelelor?

Operatorul LIKE este utilizat pentru potrivirea modelelor și poate fi folosit ca -.

  1. % - Se potrivește cu zero sau mai multe caractere.
  2. _ (Underscore) - Potrivirea exactă a unui caracter.

Exemplu -.

Select * from Student where studentname like 'a%'
Select * from Student where studentname like 'ami_'