20 domande e risposte più comuni per le interviste alle query SQL [per principianti ed esperti]
Pubblicato: 2021-07-14Partecipare a un colloquio SQL e chiedersi quali sono tutte le domande e le discussioni che affronterai? Prima di partecipare a un colloquio SQL, è meglio avere un'idea dei tipi di domande del colloquio SQL che verranno poste in modo da poter preparare mentalmente le risposte per loro.
Per aiutarti, ho creato la migliore guida alle domande e risposte dell'intervista SQL per comprendere la profondità e le reali intenzioni delle domande dell'intervista SQL. Iniziamo.
Structured Query Language (SQL) è un linguaggio di programmazione diffuso e ampiamente utilizzato per la gestione, la manipolazione e l'esecuzione di query sui dati nei database relazionali. Sebbene SQL non sia esattamente il linguaggio più veloce per comunicare con i database relazionali, è senza dubbio il mezzo più efficiente per gestire i dati strutturati.
Rispetto alle tradizionali API di lettura e scrittura come ISAM o VSAM , SQL estende due vantaggi principali:
- Ti consente di accedere a più record utilizzando un unico comando.
- Elimina la necessità di specificare come accedere a un record (se utilizzare o meno un indice) da un database.
Una query SQL è una domanda o una richiesta di accesso ai dati archiviati in un database. Un database memorizza le informazioni in un formato tabellare. Pertanto, contiene righe e colonne. Mentre i campi del database formano le colonne che indirizzano il database sulle informazioni che può archiviare, le righe contengono i dati. Ecco un set di dati di esempio chiamato "tblAlbum" per mettere le cose in prospettiva:
Fonte
Creiamo una query SQL utilizzando questi dati di esempio. Ci concentreremo sulla scelta solo degli album con una valutazione di 9 o superiore. Quindi, essenzialmente stiamo chiedendo alla query di produrre un elenco di titoli di album dal database con una valutazione uguale o superiore a 9. Utilizzerai parole chiave pertinenti per ottenere la risposta desiderata.
Le parole chiave in questo scenario sono – SELECT (dettaglio per recuperare le informazioni dal database), FROM (la tabella specifica contenente i suddetti dati) e WHERE (dettaglio dei criteri per l'accesso alle informazioni). Quando utilizzi queste parole chiave, la tua query SQL sarà simile a questa:
SELEZIONA albumTitle DA tblAlbums
WHERE valutazione >= 9;
Pertanto, stai scegliendo (SELEZIONARE) i dati da (DA) la tabella "tblAlbums" dove (DOVE) la valutazione dell'album è 9 o superiore. L'istruzione WHERE può essere molto semplice o eccessivamente complessa se è coinvolta una notevole quantità di logica annidata. Eseguendo la query, otterrai il seguente risultato:
titolo dell'album
Sinfonia in re minore
Cuore del poeta
Ora che hai una conoscenza di base di cosa sono le query SQL e come funzionano, diamo un'occhiata a venti domande di intervista di query SQL!
Prima di iniziare con le domande del colloquio di query SQL, controlla queste tabelle di riferimento: le nostre query saranno basate su queste tabelle.
Tabella delle informazioni sui dipendenti:
EmpID | NomeFemp | NomeEmp | Dipartimento | Progetto | Indirizzo | DOB | Genere |
1 | Rohit | Gupta | amministratore | P1 | Delhi | 02/12/1979 | Maschio |
2 | Rahul | Mahajan | amministratore | P2 | Bombay | 10/10/1986 | Maschio |
3 | Sonia | Banerjee | risorse umane | P3 | Puno | 05/06/1983 | Femmina |
4 | Ankita | Kapoor | risorse umane | P4 | Chennai | 28/11/1983 | Femmina |
5 | Swati | Garga | risorse umane | P5 | Delhi | 06/04/1991 | Femmina |
Tabella posizione dipendente:
EmpID | EmpPosizione | Data di adesione | Stipendio |
1 | Esecutivo | 01/04/2020 | 75000 |
2 | Manager | 03/04/2020 | 500000 |
3 | Manager | 02/04/2020 | 150000 |
2 | Ufficiale | 02/04/2020 | 90000 |
1 | Manager | 03/04/2020 | 300000 |
Domande e risposte per il colloquio di query SQL
- Scrivere una query per ottenere EmpFname dalla tabella EmployeeInfo in maiuscolo utilizzando il nome alias come EmpName.
La query per questa condizione è:
SELECT UPPER(EmpFname) COME EmpName DA EmployeeInfo;
- Scrivi una query per ottenere il numero di dipendenti che lavorano nel dipartimento 'HR'.
Ecco la domanda per questa domanda:
SELECT COUNT(*) FROM EmployeeInfo WHERE Department = 'HR';
- Quale query scriverai per recuperare la data corrente?
Per recuperare la data corrente, puoi scrivere questa query nel server SQL:
SELEZIONA GETDATE();
Per recuperare la data corrente, puoi scrivere questa query in MySQL:
SELEZIONA DATA SISTEMA();
- Scrivere una query per recuperare solo il nome del luogo (stringa prima delle parentesi) dalla colonna Indirizzo della tabella EmployeeInfo.
È possibile utilizzare la funzione MID in MySQL per creare la seguente query:
SELECT MID(Address, 0, LOCATE('(',Address)) FROM EmployeeInfo;
È possibile utilizzare SUBSTRING per creare la seguente query:
SELECT SUBSTRING(Address, 1, CHARINDEX('(',Address)) FROM EmployeeInfo;
Ulteriori informazioni: SQL per la scienza dei dati: perché SQL
- Scrivere una query per creare una nuova tabella i cui dati e la struttura vengano copiati da un'altra tabella.
È possibile utilizzare il comando SELECT INTO per creare la query seguente:
SELEZIONA * IN NewTable DA EmployeeInfo DOVE 1 = 0;
È possibile utilizzare il comando CREATE in MySQL per creare la seguente query:
CREATE TABLE NewTable AS SELECT * FROM EmployeeInfo;
- Scrivi una query per visualizzare i nomi dei dipendenti che iniziano con "S".
Questa è la query che devi scrivere per ottenere i nomi dei dipendenti i cui nomi iniziano con 'S':
SELEZIONA * DA EmployeeInfo DOVE EmpFname LIKE 'S%';
- Scrivi una query per recuperare i primi N record.
È possibile scrivere una query utilizzando il comando TOP in SQL Server:
SELEZIONA TOP N * DA EmployeePosition ORDINA PER Stipendio DESC;
Puoi anche creare una query usando il comando LIMIT in MySQL:
SELEZIONA * DA EmpPosition ORDINA PER Stipendio DESC LIMITE N;
- Scrivere una query per ottenere i record rilevanti dalla tabella EmployeeInfo ordinata per Dipartimento in ordine crescente e NomeEmp in ordine decrescente.
È necessario utilizzare l'istruzione ORDER BY in SQL per questo scopo;
SELEZIONA * DA EmployeeInfo ORDINA PER Dipartimento asc, EmpFname desc;
- Scrivi una query per ottenere i dettagli dei dipendenti il cui nome EmpF termina con 'A'.
È possibile utilizzare l'operatore LIKE in SQL per creare una query per questo problema:
SELECT * FROM EmployeeInfo DOVE EmpFname LIKE '____a';
10.Crea una query per recuperare i dettagli dei dipendenti che hanno "DELHI" come indirizzo.
SELEZIONA * DA EmployeeInfo DOVE Indirizzo COME 'DELHI%';
Leggi: I 9 migliori strumenti per la scienza dei dati nel 2020
- Scrivi una query per recuperare tutti i dipendenti che ricoprono anche la posizione manageriale.
Qualsiasi guida a domande e risposte per l'intervista SQL non verrà completata senza questa domanda.
Ecco la query per ottenere i dipendenti che ricoprono la posizione manageriale:
SELECT E.EmpFname, E.EmpLname, P.EmpPosition
DA EmployeeInfo E INNER JOIN EmployeePosition P ON
E.EmpID = P.EmpID E P.EmpPosition IN ("Manager");
- Crea una query per generare il primo e l'ultimo record dalla tabella EmployeeInfo.
Una delle domande di intervista SQL più comuni.
Ecco la query per recuperare il primo record dalla tabella EmployeeInfo:
SELECT * FROM EmployeeInfo DOVE EmpID = (SELECT MIN(EmpID) FROM EmployeeInfo);
Ecco la query per recuperare l'ultimo record dalla tabella EmployeeInfo:
SELECT * FROM EmployeeInfo DOVE EmpID = (SELECT MAX(EmpID) FROM EmployeeInfo);
- Creare una query per verificare se il valore passato alla query segue il formato della data delle tabelle EmployeeInfo e EmployeePosition.
È possibile utilizzare la funzione IsDate() in SQL per verificare se il valore passato segue il formato specificato o meno. Restituisce 1(true) o 0(false) di conseguenza. Ecco come apparirà la query:
SELEZIONA ISDATE('01/04/2020′) COME “MM/GG/AA”;
L'esecuzione di questa query restituirà 0 poiché il valore passato non corrisponde al formato specificato.
- Crea una query per ottenere dipendenti display con stipendi pari o superiori a 150000.
La query per questa richiesta sarà:
SELEZIONA NomeEmp DA Dipendenti DOVE Stipendio>=150000;
- Scrivi una query per recuperare l'anno utilizzando una data.
È possibile ottenere l'anno da una data in un server SQL eseguendo la query seguente:
SELEZIONA ANNO(GETDATE()) come “Anno”;
- Crea una query SQL per recuperare EmpPostion e lo stipendio totale pagato per ogni posizione di dipendente.
La query per questa richiesta è:
SELECT EmpPosition, SUM(Salary) da EmployeePosition GROUP BY EmpPosition;
- Scrivi una query per trovare record duplicati da una tabella.
Una delle domande più comuni in qualsiasi guida alle domande e risposte di un'intervista SQL.
SELECT EmpID, EmpFname, Department COUNT(*)
DA EmployeeInfo GRUPPO PER EmpID, EmpFname, Department
AVENDO CONTEGGIO(*) > 1;
- Crea una query per recuperare il terzo stipendio più alto dalla tabella EmpPosition.
SELEZIONA lo stipendio TOP 1
DA(
SELEZIONA lo stipendio TOP 3
DA tabella_impiegata
ORDINA PER stipendio DESC) AS emp
ORDINA PER stipendio ASC;
- Scrivere una query SQL per trovare i record pari e dispari nella tabella EmployeeInfo.
È necessario utilizzare la funzione MOD() per recuperare i record pari e dispari da una tabella. Per i record pari, la query sarà:
SELEZIONA EmpID DA (SELEZIONA rowno, EmpID da EmployeeInfo) WHERE MOD(rowno,2)=0;
Per i record dispari, la query sarà:
SELEZIONA EmpID DA (SELEZIONA rowno, EmpID da EmployeeInfo) WHERE MOD(rowno,2)=1;
- Creare una query per recuperare l'elenco dei dipendenti dello stesso reparto.
Ecco la query per questa richiesta:
Selezionare DISTINCT E.EmpID, E.EmpFname, E.DepartmentFROM EmployeeInfo E, Employee E1
DOVE E.Dipartimento = E1.Dipartimento E E.EmpID != E1.EmpID;
Impara i corsi di software online dalle migliori università del mondo. Guadagna programmi Executive PG, programmi di certificazione avanzati o programmi di master per accelerare la tua carriera.
Conclusione
Con ciò, arriviamo alla fine del nostro elenco di domande di intervista con query SQL. Ci auguriamo che queste query ti diano un'idea chiara del modello di query SQL standard e di come creare query SQL. Più ti eserciti, migliore sarà la scrittura di query SQL per accedere e manipolare i dati in una tabella di dati.
Se sei curioso di migliorare le tue conoscenze SQL e altro sullo sviluppo dello stack completo, dai un'occhiata al diploma PG di IIIT-B e upGrad in Sviluppo software full stack, creato per i professionisti che lavorano e offre oltre 10 casi di studio e progetti, pratiche pratiche workshop, tutoraggio con esperti del settore, 1 contro 1 con tutor del settore, oltre 400 ore di apprendimento e assistenza al lavoro con le migliori aziende.