logo

Domande di intervista su query SQL

SQL O Structured Query Language è un linguaggio standard per i database relazionali. Le query SQL sono strumenti potenti utilizzati per, manipolare e gestire i dati archiviati in questi database come MySQL , Oracolo , PostgreSQL , ecc. Che tu stia recuperando punti dati specifici, eseguendo analisi complesse o modificando strutture di database, le query SQL forniscono un linguaggio standardizzato per eseguire queste attività in modo efficiente.

Qui tratteremo Oltre 45 domande per interviste su MySQL con risposte che vengono comunemente poste durante interviste per Data Analyst E Ingegnere dei dati posizioni presso MAANG e altre società ben pagate. Che tu sia un più fresco o un professionista esperto con 5 , 8 , O 10 anni di esperienza, questo articolo ti dà tutta la sicurezza di cui hai bisogno per superare il tuo prossimo colloquio.



Domande e risposte sull'intervista alle query SQL

Abbiamo creato tre tabelle di esempio:Tavolo per studenti,Tabella dei programmi, ETabella delle borse di studio. Utilizzeremo queste tabelle per eseguire varie operazioni di query.

Tavolo per studenti

STUDENTE_ID



NOME DI BATTESIMO

COGNOME

GPA



ISCRIZIONE_DATA

MAGGIORE

201

Shivansh

Mahajan

8.79

2021-09-01 09:30:00

Informatica

202

Umeš

Sharma

8.44

2021-09-01 08:30:00

Matematica

203

Rakesh

Kumar

5,60

2021-09-01 10:00:00

Biologia

204

Radha

Sharma

9.20

2021-09-01 12:45:00

Chimica

205

Chi

Kumar

7,85

2021-09-01 08:30:00

Fisica

206

Prem

Chopra

9.56

2021-09-01 09:24:00

Storia

207

Pankaj

Tini

9.78

2021-09-01 02:30:00

Inglese

208

Navleen

Kaur

7.00

2021-09-01 06:30:00

Matematica

Tabella dei programmi

STUDENTE_REF_ID

NOME DEL PROGRAMMA

DATA_INIZIO_PROGRAMMA

201

Informatica

2021-09-01 00:00:00

202

Matematica

2021-09-01 00:00:00

208

stringa sostitutiva Java

Matematica

2021-09-01 00:00:00

205

Fisica

2021-09-01 00:00:00

204

Chimica

2021-09-01 00:00:00

207

Psicologia

2021-09-01 00:00:00

206

Storia

2021-09-01 00:00:00

203

Biologia

2021-09-01 00:00:00

Tabella delle borse di studio

STUDENTE_REF_ID

BORSA DI STUDIO_IMPORTO

BORSA DI STUDIO_DATA

201

5000

2021-10-15 00:00:00

202

4500

2022-08-18 00:00:00

203

3000

25/01/2022 00:00:00

201

4000

2021-10-15 00:00:00

Cominciamo dando un'occhiata ad alcuni dei domande più frequenti dell'intervista SQL Query :

1. Scrivi una query SQL per recuperare FIRST_NAME dalla tabella Studenti in maiuscolo e utilizza il nome ALIAS come STUDENT_NAME.

SELECT upper(FIRST_NAME) as STUDENT_NAME from Student;>

Produzione:

SHIVANSH UMESH RAKESH RADHA KUSH PREM PANKAJ NAVLEEN>

2. Scrivere una query SQL per recuperare valori univoci di PRINCIPALI Soggetti dalla tabella Studenti.

SELECT DISTINCT MAJOR from STUDENT; or SELECT MAJOR FROM STUDENT GROUP BY(MAJOR);>

Produzione:

Computer Science Mathematics Biology Chemistry Physics History English>

3. Scrivi una query SQL per stampare i primi 3 caratteri di FIRST_NAME dalla tabella Student.

SELECT SUBSTRING(FIRST_NAME, 1, 3) FROM Student;>

Produzione:

Shi Ume Rak Rad Kus Pre Pan Nav>

4. Scrivi una query SQL per trovare la posizione dell'alfabeto ('a') nella colonna del nome 'Shivansh' dalla tabella Studente.

SELECT INSTR(FIRST_NAME, 'a') FROM Student WHERE FIRST_NAME = 'Shivansh';>

Produzione:

5>

5. Scrivere una query SQL che recuperi i valori univoci di PRINCIPALI Soggetti dalla tabella Studenti e stamparne la lunghezza.

SELECT MAJOR,LENGTH(MAJOR) FROM Student GROUP BY(MAJOR); or SELECT DISTINCT MAJOR, LENGTH(MAJOR) FROM Student;>

Produzione:

MAGGIORE

LUNGHEZZA(MAGGIORE)

Informatica

16

Matematica

undici

Biologia

7

Chimica

9

Fisica

7

Storia

7

Inglese

7

6. Scrivi una query SQL per stampare FIRST_NAME dalla tabella Student dopo aver sostituito 'a' con 'A'.

SELECT REPLACE(FIRST_NAME, 'a', 'A') FROM Student;>

Produzione:

ShivAnsh Umesh RAkesh RAdhA Kush Prem PAnkAj NAvleen>

7. Scrivi una query SQL per stampare FIRST_NAME e LAST_NAME dalla tabella Student in una singola colonna COMPLETE_NAME.

SELECT CONCAT(FIRST_NAME, ' ', LAST_NAME) AS COMPLETE_NAME FROM Student;>

Produzione:

Shivansh Mahajan Umesh Sharma Rakesh Kumar Radha Sharma Kush Kumar Prem Chopra Pankaj Vats Navleen Kaur>

8. Scrivere una query SQL per stampare tutti i dettagli degli Studenti dall'ordine della tabella Studenti per FIRST_NAME Crescente e MAJOR Soggetto discendente.

SELECT * FROM Student ORDER BY FIRST_NAME , MAJOR DESC;>

Produzione:

STUDENTE_ID

NOME DI BATTESIMO

COGNOME

GPA

ISCRIZIONE_DATA

MAGGIORE

205

Chi

Kumar

7,85

2021-09-01 08:30:00

Fisica

208

Navleen

Kaur

7

2021-09-01 06:30:00

Matematica

207

Pankaj

Tini

9.78

2021-09-01 02:30:00

una classe può estendere più classi

Inglese

206

Prem

Chopra

9.56

2021-09-01 09:24:00

Storia

204

Radha

Sharma

9.2

2021-09-01 12:45:00

Chimica

203

Rakesh

Kumar

5.6

2021-09-01 10:00:00

Biologia

201

Shivansh

Mahajan

8.79

2021-09-01 09:30:00

Informatica

202

Umesh

Sharma

8.44

2021-09-01 08:30:00

Matematica

9. Scrivi una query SQL per stampare i dettagli degli Studenti con FIRST_NAME come 'Prem' e 'Shivansh' dalla tabella Studenti.

SELECT * from Student WHERE FIRST_NAME IN ('Prem' , 'Shivansh');>

Produzione:

STUDENTE_ID

NOME DI BATTESIMO

COGNOME

GPA

ISCRIZIONE_DATA

MAGGIORE

201

Shivansh

Mahajan

8.79

2021-09-01 09:30:00

Informatica

206

Prem

Chopra

9.56

2021-09-01 09:24:00

Storia

10. Scrivi una query SQL per stampare i dettagli degli Studenti escludendo FIRST_NAME come 'Prem' e 'Shivansh' dalla tabella Studenti.

SELECT * from Student WHERE FIRST_NAME NOT IN ('Prem', 'Shivansh');>

Produzione:

STUDENTE_ID

NOME DI BATTESIMO

COGNOME

GPA

ISCRIZIONE_DATA

MAGGIORE

202

Umeš

Sharma

8.44

2021-09-01 08:30:00

Matematica

203

Rakesh

Kumar

5.6

2021-09-01 10:00:00

Biologia

204

Radha

Sharma

9.2

2021-09-01 12:45:00

Chimica

205

Chi

Kumar

7,85

2021-09-01 08:30:00

Fisica

207

Pankaj

Tini

9.78

2021-09-01 02:30:00

Inglese

208

Navleen

Kaur

7

2021-09-01 06:30:00

Matematica

11. Scrivi una query SQL per stampare i dettagli degli Studenti il ​​cui FIRST_NAME termina con 'a'.

SELECT * FROM Student WHERE FIRST_NAME LIKE '%a';>

Produzione:

STUDENTE_ID

NOME DI BATTESIMO

COGNOME

GPA

ISCRIZIONE_DATA

MAGGIORE

204

Radha

Sharma

9.2

2021-09-01 12:45:00

Chimica

12. Scrivi una query SQL per stampare i dettagli degli Studenti il ​​cui FIRST_NAME termina con 'a' e contiene sei alfabeti.

SELECT * FROM Student WHERE FIRST_NAME LIKE '_____a';>

13. Scrivere una query SQL per stampare i dettagli degli Studenti il ​​cui GPA è compreso tra 9.00 e 9.99.

SELECT * FROM Student WHERE GPA BETWEEN 9.00 AND 9.99;>

Produzione:

STUDENTE_ID

NOME DI BATTESIMO

COGNOME

GPA

ISCRIZIONE_DATA

MAGGIORE

204

Radha

Sharma

9.2

2021-09-01 12:45:00

Chimica

206

Prem

Chopra

9.56

2021-09-01 09:24:00

Storia

207

Pankaj

Tini

9.78

2021-09-01 02:30:00

Inglese

14. Scrivi una query SQL per recuperare il conteggio degli studenti con la materia principale 'Informatica'.

SELECT Major, COUNT(*) as TOTAL_COUNT FROM Student WHERE MAJOR = 'Computer Science';>

Produzione:

MAGGIORE

CONTEGGIO TOTALE

Informatica

1

15. Scrivere una query SQL per recuperare i nomi completi degli Studenti con GPA>= 8.5 e <= 9.5.

SELECT CONCAT(FIRST_NAME, ' ', LAST_NAME) AS FULL_NAME FROM Student WHERE GPA BETWEEN 8.5 and 9.5;>

Produzione:

Shivansh Mahajan Radha Sharma>

16. Scrivi una query SQL per recuperare il n. di Studenti per ciascuna materia PRINCIPALE in ordine decrescente.

SELECT MAJOR, COUNT(MAJOR) from Student group by MAJOR order by COUNT(MAJOR);>

Produzione:

MAGGIORE

CONTEGGIO(MAGGIORE)

Biologia

1

Chimica

1

Informatica

1

Inglese

1

Storia

1

Fisica

1

Matematica

2

17. Visualizza i dettagli degli studenti che hanno ricevuto borse di studio, inclusi i loro nomi, importi e date delle borse di studio.

SELECT Student.FIRST_NAME, Student.LAST_NAME, Scholarship.SCHOLARSHIP_AMOUNT, Scholarship.SCHOLARSHIP_DATE FROM Student INNER JOIN Scholarship ON Student.STUDENT_ID = Scholarship.STUDENT_REF_ID;>

Produzione:

NOME DI BATTESIMO COGNOME BORSA DI STUDIO_IMPORTO BORSA DI STUDIO_DATA
Shivansh Mahajan 5000 2021-10-15 00:00:00
Umesh Sharma 4500 2022-08-18 00:00:00
Rakesh Kumar 3000 25/01/2022 00:00:00
Shivansh Mahajan 4000 2021-10-15 00:00:00

18. Scrivi una query SQL per mostrare solo le righe dispari dalla tabella Studente.

SELECT * FROM Student WHERE student_id % 2 != 0;>

Produzione:

STUDENTE_ID

NOME DI BATTESIMO

COGNOME

GPA

ISCRIZIONE_DATA

MAGGIORE

201 Shivansh Mahajan 8.79 2021-09-01 09:30:00 Informatica
203 Rakesh Kumar 5.6 2021-09-01 10:00:00 Biologia
205 Chi Kumar 7,85 2021-09-01 08:30:00 Fisica
207 Pankaj Tini 9.78 2021-09-01 02:30:00 Inglese

19. Scrivi una query SQL per mostrare solo le righe pari dalla tabella Studente.

SELECT * FROM Student WHERE student_id % 2 = 0;>

Produzione:

STUDENTE_ID

NOME DI BATTESIMO

COGNOME

GPA

ISCRIZIONE_DATA

MAGGIORE

202 Umesh Sharma 8.44 2021-09-01 08:30:00 Matematica
204 Radha Sharma 9.2 2021-09-01 12:45:00 Chimica
206 Prem Chopra 9.56 2021-09-01 09:24:00 Storia
208 Navleen Kaur 7 2021-09-01 06:30:00 Matematica

20. Elencare tutti gli studenti e gli importi delle borse di studio, se ne hanno ricevute. Se uno studente non ha ricevuto una borsa di studio, visualizzare NULL per i dettagli della borsa di studio.

SELECT Student.FIRST_NAME, Student.LAST_NAME, COALESCE(Scholarship.SCHOLARSHIP_AMOUNT, NULL) AS SCHOLARSHIP_AMOUNT, COALESCE(Scholarship.SCHOLARSHIP_DATE, NULL) AS SCHOLARSHIP_DATE FROM Student LEFT JOIN Scholarship ON Student.STUDENT_ID = Scholarship.STUDENT_REF_ID;>

21. Scrivere una query SQL per mostrare i primi n (diciamo 5) record dell'ordine della tabella Student secondo il GPA discendente.

SELECT * from Student ORDER BY GPA DESC LIMIT 5;>

Produzione:

STUDENTE_ID

NOME DI BATTESIMO

COGNOME

GPA

ISCRIZIONE_DATA

MAGGIORE

207 Pankaj Tini 9.78 2021-09-01 02:30:00 Inglese
206 Prem Chopra 9.56 2021-09-01 09:24:00 Storia
204 Radha Sharma 9.2 2021-09-01 12:45:00 Chimica
201 Shivansh Mahajan 8.79 2021-09-01 09:30:00 Informatica
202 Umeš Sharma 8.44 2021-09-01 08:30:00 Matematica

22. Scrivere una query SQL per determinare l'ennesimo (diciamo n=5) GPA più alto da una tabella.

SELECT * FROM Student ORDER BY GPA DESC LIMIT 5, 1;>

Produzione:

STUDENTE_ID

NOME DI BATTESIMO

COGNOME

GPA

ISCRIZIONE_DATA

MAGGIORE

205 Chi Kumar 7,85 2021-09-01 08:30:00 Fisica

23. Scrivi una query SQL per determinare il quinto GPA più alto senza utilizzare la parola chiave LIMIT.

SELECT * FROM Student s1 WHERE 4 = ( SELECT COUNT(DISTINCT (s2.GPA)) FROM Student s2 WHERE s2.GPA>= s1.GPA );>

Produzione:

STUDENTE_ID

NOME DI BATTESIMO

COGNOME

GPA

ISCRIZIONE_DATA

MAGGIORE

201 Shivansh Mahajan 8.79 2021-09-01 09:30:00 Informatica

24. Scrivere una query SQL per recuperare l'elenco degli Studenti con lo stesso GPA.

SELECT s1.* FROM Student s1, Student s2 WHERE s1.GPA = s2.GPA AND s1.Student_id != s2.Student_id;>

25. Scrivi una query SQL per mostrare il secondo GPA più alto da una tabella Studente utilizzando la sottoquery.

SELECT MAX(GPA) FROM Student WHERE GPA NOT IN(SELECT MAX(GPA) FROM Student);>

Produzione:

9.56>

26. Scrivere una query SQL per mostrare una riga due volte nei risultati di una tabella.

SELECT * FROM Student UNION ALL SELECT * FROM Student ORDER BY STUDENT_ID;>

27. Scrivi una query SQL per elencare STUDENT_ID che non ottiene la borsa di studio.

SELECT STUDENT_ID FROM Student WHERE STUDENT_ID NOT IN (SELECT STUDENT_REF_ID FROM Scholarship);>

Produzione:

204 205 206 207 208>

28. Scrivere una query SQL per recuperare il primo 50% dei record da una tabella.

SELECT * FROM Student WHERE STUDENT_ID <= (SELECT COUNT(STUDENT_ID)/2 FROM Student);>

29. Scrivi una query SQL per recuperare l'oggetto MAJOR che contiene meno di 4 persone.

SELECT MAJOR, COUNT(MAJOR) AS MAJOR_COUNT FROM Student GROUP BY MAJOR HAVING COUNT(MAJOR) <4;>

Produzione:

MAGGIORE MAGGIORI_COUNT
Biologia 1
Chimica 1
Informatica 1
Inglese 1
Storia 1
Matematica 2
Fisica 1

30. Scrivi una query SQL per mostrare tutti gli argomenti PRINCIPALI insieme al numero di persone presenti.

SELECT MAJOR, COUNT(MAJOR) AS ALL_MAJOR FROM Student GROUP BY MAJOR;>

Produzione:

MAGGIORE TUTTI IMPORTANTI
Biologia 1
Chimica 1
Informatica 1
Inglese 1
Storia 1
Matematica 2
Fisica 1

31. Scrivere una query SQL per mostrare l'ultimo record di una tabella.

SELECT * FROM Student WHERE STUDENT_ID = (SELECT MAX(STUDENT_ID) FROM STUDENT);>

Produzione:

STUDENTE_ID NOME DI BATTESIMO COGNOME GPA ISCRIZIONE_DATA MAGGIORE
208 Navleen Kaur 7 2021-09-01 06:30:00 Matematica

32. Scrivere una query SQL per recuperare la prima riga di una tabella.

SELECT * FROM Student WHERE STUDENT_ID = (SELECT MIN(STUDENT_ID) FROM Student);>

Produzione:

STUDENTE_ID NOME DI BATTESIMO COGNOME GPA ISCRIZIONE_DATA MAGGIORE
201 Shivansh Mahajan 8.79 2021-09-01 09:30:00 Informatica

33. Scrivere una query SQL per recuperare gli ultimi cinque record da una tabella.

SELECT * FROM ( SELECT * FROM Student ORDER BY STUDENT_ID DESC LIMIT 5 ) AS subquery ORDER BY STUDENT_ID;>

Produzione:

STUDENTE_ID NOME DI BATTESIMO COGNOME GPA ISCRIZIONE_DATA MAGGIORE
204 Radha Sharma 9.2 2021-09-01 12:45:00 Chimica
205 Chi Kumar 7,85 2021-09-01 08:30:00 Fisica
206 Prem Chopra 9.56 2021-09-01 09:24:00 Storia
207 Pankaj Tini 9.78 2021-09-01 02:30:00 Inglese
208 Navleen Kaur 7 2021-09-01 06:30:00 Matematica

34. Scrivi una query SQL per recuperare tre GPA massimi da una tabella utilizzando una sottoquery correlata.

SELECT DISTINCT GPA FROM Student S1 WHERE 3>= (SELEZIONA CONTEGGIO (GPA DISTINTO) DA Studente S2 DOVE S1.GPA<= S2.GPA) ORDER BY S1.GPA DESC;>

Produzione:

9.78 9.56 9.2>

35. Scrivere una query SQL per recuperare tre minuti GPA da una tabella utilizzando una sottoquery correlata.

SELECT DISTINCT GPA FROM Student S1 WHERE 3>= (SELEZIONA CONTEGGIO (GPA DISTINTO) DA Studente S2 WHERE S1.GPA>= S2.GPA) ORDINA PER S1.GPA;>

Produzione:

5.6 7 7.85>

36. Scrivere una query SQL per recuperare l'ennesimo GPA massimo da una tabella.

SELECT DISTINCT GPA FROM Student S1 WHERE n>= (SELEZIONA CONTEGGIO (GPA DISTINTO) DA Studente S2 DOVE S1.GPA<= S2.GPA) ORDER BY S1.GPA DESC;>

37. Scrivi una query SQL per recuperare gli argomenti PRINCIPALI insieme al GPA massimo in ciascuno di questi argomenti PRINCIPALI.

SELECT MAJOR, MAX(GPA) as MAXGPA FROM Student GROUP BY MAJOR;>

Produzione:

MAGGIORE MASSIMO GPA
Biologia 5.6
Chimica 9.2
Informatica 8.79
Inglese 9.78
Storia 9.56
Matematica 8.44
Fisica 7,85

38. Scrivi una query SQL per recuperare i nomi degli studenti che hanno il GPA più alto.

SELECT FIRST_NAME, GPA FROM Student WHERE GPA = (SELECT MAX(GPA) FROM Student);>

Produzione:

NOME DI BATTESIMO GPA
Pankaj 9.78

39. Scrivere una query SQL per mostrare la data e l'ora correnti.

Query to get current date : SELECT CURDATE(); Query to get current date and time : SELECT NOW();>

40. Scrivere una query per creare una nuova tabella composta da dati e struttura copiati dall'altra tabella (ad esempio Studente) o clonare la tabella denominata Studente.

CREATE TABLE CloneTable AS SELECT * FROM Student;>

41. Scrivi una query SQL per aggiornare il GPA di tutti gli studenti in 'Informatica' MAJOR soggetto a 7.5.

UPDATE Student SET GPA = 4.0 WHERE MAJOR = 'Computer Science';>

42. Scrivi una query SQL per trovare il GPA medio per ciascuna specializzazione.

SELECT MAJOR, AVG(GPA) AS AVERAGE_GPA FROM Student GROUP BY MAJOR;>

Produzione:

pitone cammello
MAGGIORE MEDIA_GPA
Biologia 5.6
Chimica 9.2
Informatica 4
Inglese 9.78
Storia 9.56
Matematica 7.72
Fisica 7,85

43. Scrivi una query SQL per mostrare i primi 3 studenti con il GPA più alto.

SELECT * FROM Student ORDER BY GPA DESC LIMIT 3;>

Produzione:

STUDENTE_ID NOME DI BATTESIMO COGNOME GPA ISCRIZIONE_DATA MAGGIORE
207 Pankaj Tini 9.78 2021-09-01 02:30:00 Inglese
206 Prem Chopra 9.56 2021-09-01 09:24:00 Storia
204 Radha Sharma 9.2 2021-09-01 12:45:00 Chimica

44. Scrivi una query SQL per trovare il numero di studenti in ciascuna specializzazione che hanno un GPA maggiore di 7,5.

SELECT MAJOR, COUNT(STUDENT_ID) AS HIGH_GPA_COUNT FROM Student WHERE GPA>3.5 GRUPPO PER MAGGIORE;>

Produzione:

MAGGIORE HIGH_GPA_COUNT
Biologia 1
Chimica 1
Informatica 1
Inglese 1
Storia 1
Matematica 2
Fisica 1

45. Scrivi una query SQL per trovare gli studenti che hanno lo stesso GPA di 'Shivansh Mahajan'.

SELECT * FROM Student WHERE GPA = (SELECT GPA FROM Student WHERE FIRST_NAME = 'Shivansh' AND LAST_NAME = 'Mahajan');>

Produzione:

STUDENTE_ID NOME DI BATTESIMO COGNOME GPA ISCRIZIONE_DATA MAGGIORE
201 Shivansh Mahajan 4 2021-09-01 09:30:00 Informatica

Conclusione

In sintesi, padroneggiare le domande del colloquio con query SQL è essenziale per chiunque desideri eccellere in ruoli come analisti di dati, ingegneri di dati e analisti aziendali. Questa guida fornisce una raccolta completa di domande e risposte per interviste con query SQL progettate per prepararti a fondo per le tue interviste.

Comprendendo e praticando queste query, puoi dimostrare la tua competenza in SQL, un'abilità fondamentale che è alla base della manipolazione e dell'analisi dei dati di successo in vari settori orientati alla tecnologia.