20 Domande e risposte frequenti sull’intervista SQL [2022]

Structured Query Language (SQL) è il linguaggio di programmazione standard utilizzato dagli amministratori di database e dagli analisti di dati per interrogare i database. È ampiamente utilizzato nei linguaggi di programmazione di siti Web, app e altre piattaforme.

Viene utilizzato per accedere e manipolare i dati in un database, inclusa la creazione e la modifica di tabelle e colonne e l’esecuzione di query sui dati utilizzando i comandi SQL.

Questo post ti darà senza dubbio alcuni spunti se stai cercando domande e risposte da utilizzare mentre ti prepari per un colloquio SQL. In un colloquio di lavoro per un ingegnere di dati, un analista di dati, un amministratore di database, ecc., ci si dovrebbe aspettare le seguenti domande.

Quali sono i comandi SQL di base?

Alcuni dei comandi SQL più importanti sono:

  • SELEZIONA – estrae i dati da un database.
  • CREATE TABLE – crea una nuova tabella.
  • DELETE – cancella i dati da un database.
  • INSERT INTO – inserisce nuovi dati in un database.
  • ALTER DATABASE – modifica un database.
  • CREATE DATABASE – crea un nuovo database.
  • AGGIORNAMENTO – aggiorna i dati in un database.

Quali sono le quattro importanti istruzioni SQL?

Le principali istruzioni SQL sono suddivise in queste categorie:

  • Dichiarazioni DDL (Data Definition Language).
  • Dichiarazioni del linguaggio di manipolazione dei dati (DML).
  • Dichiarazioni del linguaggio di controllo dei dati (DCL).
  • Dichiarazioni del linguaggio di controllo delle transazioni (TCL).

Qual è il significato della chiave primaria in SQL?

Una chiave primaria è una colonna (o un insieme di colonne) che consente di identificare in modo univoco ogni riga di un database. I database SQL danno molta importanza alle chiavi primarie. Forniscono a ogni riga in una tabella di database un ID univoco. Una chiave primaria può essere costituita da uno o più campi e può esserci solo una chiave primaria per tabella.

Cosa sono i tipi di dati SQL?

Un tipo di dati è un attributo che descrive il tipo di dati che un oggetto può archiviare, ad esempio stringhe binarie, dati numerici, dati di caratteri, dati finanziari, dati di data e ora e così via.

In SQL, i tipi di dati sono classificati nei seguenti gruppi:

  • Numeri esatti
  • Numeri approssimativi
  • Data e ora
  • Stringhe di caratteri
  • Stringhe di caratteri Unicode
  • Stringhe binarie

Dove sono archiviati i nomi utente e le password in SQL Server?

I nomi utente e le password vengono archiviati rispettivamente nei principal sys.server e negli account di accesso sys.sql della tabella SQL. Le password non vengono memorizzate nel testo normale.

Che cos’è l’iniezione SQL?

Gli attacchi SQL injection sono oggi uno dei tipi più comuni di attacchi informatici. Consentono a malintenzionati di accedere ai dati manipolando il database di un’applicazione. Ciò può comportare un’ampia gamma di conseguenze negative, dalle perdite finanziarie alla perdita di dati sensibili. Il modo migliore per proteggersi dagli attacchi SQL injection è innanzitutto impedire che si verifichino.

Che cos’è un trigger in SQL e nei suoi tipi?

Un trigger è un tipo speciale di stored procedure che viene eseguito automaticamente quando si verifica un evento nel server di database. I trigger vengono utilizzati per valutare i dati prima o dopo la modifica dei dati utilizzando istruzioni DDL e DML.

Esistono tre tipi di trigger: LOGON, DDL e DML.

  • Trigger di accesso: questi trigger vengono attivati ​​quando un utente avvia un evento di accesso.
  • I trigger DDL vengono attivati ​​ogni volta che viene emesso un comando DDL come CREATE, ALTER o DROP.
  • Trigger DML: vengono attivati ​​ogni volta che un comando DML modifica i dati. Paragonabile a INSERT, UPDATE e DELETE

Come distingueresti tra funzioni a riga singola e a righe multiple?

Una singola riga in una tabella può essere influenzata da funzioni di riga singola contemporaneamente. Eseguono una riga e poi restituiscono solo un risultato. È noto che le conversioni di lunghezza e maiuscolo sono funzioni a riga singola.

Le righe di una tabella possono essere interessate da molte funzioni di riga contemporaneamente. Sono anche note come funzioni di gruppo, che eseguono più righe prima di restituire un singolo output.

Che cos’è la normalizzazione del database e quali sono i suoi quattro tipi principali in SQL?

La normalizzazione del database è un processo attraverso il quale i dati sono organizzati per un’accessibilità più rapida e per ridurre la ridondanza dei dati. Le colonne e le tabelle di un database vengono organizzate durante la normalizzazione per assicurarsi che tutte le dipendenze siano correttamente mantenute dai vincoli di integrità del database.

I quattro tipi di processi di normalizzazione del database sono i seguenti:

  • Prima forma normale (1 NF)
  • Seconda forma normale (2 NF)
  • Terza forma normale (3 NF)
  • Boyce Codd Forma normale o quarta forma normale (BCNF o 4 NF)

Cosa sono gli indici e i vincoli in SQL?

Gli indici sono uno dei concetti più importanti in SQL. Ci consentono di trovare rapidamente righe di dati specifiche in database di grandi dimensioni. Ci aiutano anche a far rispettare i vincoli, che sono regole che indicano al database come comportarsi quando vengono soddisfatte determinate condizioni.

Gli indici vengono utilizzati per migliorare le prestazioni delle query velocizzando la ricerca dei dati nelle tabelle. Sono utilizzati anche per migliorare la leggibilità dei dati nelle tabelle.

I vincoli vengono utilizzati per limitare il tipo di dati che possono entrare in una tabella. Ciò garantisce l’accuratezza e l’affidabilità dei dati nella tabella. In caso di violazione tra il vincolo e l’azione dati, l’azione viene interrotta.

Quali sono i vincoli SQL comunemente usati?

I vincoli SQL comunemente usati sono:

  • CREATE INDEX: questo comando assicura che gli indici vengano creati per le tabelle in modo che il recupero dei dati sia più semplice.
  • CHIAVE ESTERNA: la chiave esterna di una tabella deve connettere tabelle con attributi simili.
  • PREDEFINITO: se non viene fornito alcun valore per i campi di una colonna, viene fornito un valore predefinito per quei campi.
  • UNICO: specifica che ogni valore in una colonna deve essere distinto.
  • CHIAVE PRIMARIA: la chiave primaria di una tabella deve identificare ogni riga.
  • NOT NULL: questa condizione garantisce che i valori NULL non vengano accettati dalle colonne.
  • VERIFICA: garantisce che ogni campo di colonna soddisfi un requisito predeterminato.

NULL è uguale a 0 in SQL?

Un valore NULL in SQL indica un valore non disponibile o assegnato. Uno spazio (‘ ‘) o zero (0) non sono equivalenti al valore NULL. Non è possibile confrontare il valore NULL con qualsiasi altro valore utilizzando operatori di confronto come “=” o”>” poiché non può essere uguale o diverso da qualsiasi altro valore.

Come prevenire gli attacchi di SQL injection?

Insieme alla scansione costante e ai test di penetrazione, i metodi di sicurezza come la convalida dell’input, la sanificazione, le istruzioni preparate e le query SQL parametrizzate sono fondamentali per prevenire gli attacchi di SQL injection. Inoltre, difese rapide come un firewall aiuterebbero a salvaguardare il database SQL.

Che cos’è Dynamic SQL e quando puoi usarlo?

Dynamic SQL è una funzionalità che puoi utilizzare per modificare le query in fase di esecuzione in base a uno o più criteri, tra cui la data corrente, l’ora corrente o qualsiasi altro criterio scelto.

Puoi utilizzare l’SQL dinamico per modificare le tue query in modi significativi e aiutarti a raggiungere i tuoi obiettivi o semplicemente migliorare le tue capacità di programmazione. Che tu stia creando una nuova app, migliorando un database o aggiungendo funzionalità di data warehouse al tuo sistema di produzione, puoi utilizzare Dynamic SQL per fare tutto.

Quali sono i diversi tipi di chiavi in ​​SQL?

Chiave primaria: ogni riga o record in una tabella di database è identificata in modo univoco da un campo chiamato Chiave primaria. Il valore univoco deve essere nella chiave primaria. I campi della chiave primaria non possono contenere valori NULL. Può esserci una sola chiave primaria per tabella, costituita da uno o più campi.

Chiave esterna: il campo o il gruppo di campi in una tabella che si riferisce alla chiave primaria di un’altra tabella è chiamato chiave esterna. Le tabelle con chiavi primarie sono chiamate tabelle padre, mentre le tabelle con chiavi esterne sono chiamate tabelle figlio.

Super chiave: una super chiave è una chiave o un insieme di chiavi che aiutano a identificare le voci in una tabella. Sebbene non tutti gli attributi siano necessari per identificare un record, una super chiave può averne uno o più.

Chiave del candidato: una chiave del candidato è un sottoinsieme di super chiavi che possono essere utilizzate per identificare i record in un database in base a uno o più attributi. A differenza di Superkey, tutte le funzionalità di una chiave candidata devono essere utili per identificare i record.

Chiave composita: una chiave composita è una combinazione di due o più colonne in una tabella utilizzata per identificare le righe in una tabella. Una chiave composita è una chiave primaria con qualche altro attributo o colonna.

Quali sono i tipi di indici in SQL?

I seguenti sono tipi di indici in SQL

  • Indice hash
  • ottimizzato per la memoria Non in cluster
  • Indice raggruppato
  • Indice non cluster
  • Indice univoco
  • Indice archivio colonne
  • Indice con colonne incluse
  • Indice su colonne calcolate
  • Indice filtrato
  • Indice spaziale
  • Indice XML
  • Indice full-text

Cosa intendi per buffer pool e menziona i suoi vantaggi?

In SQL, un pool di buffer viene anche definito cache di buffer. Un pool di buffer può essere utilizzato da tutte le risorse per archiviare le pagine di dati memorizzate nella cache. Quando si configura un’istanza di SQL Server, è possibile specificare la dimensione del pool di buffer. La dimensione di un pool di buffer determina quante pagine può contenere.

I seguenti sono i vantaggi di un pool di buffer:

  • Miglioramenti nelle prestazioni di I/O
  • Crescita del throughput delle transazioni
  • Riduzione della latenza I/O
  • Miglioramento delle prestazioni di lettura

Cosa intendi per dipendenza e menziona le diverse dipendenze?

Quando si fa riferimento a un oggetto per nome in un’istruzione SQL conservata in un altro oggetto, viene stabilita una dipendenza tra i due oggetti. Il termine “entità di riferimento” si riferisce a un oggetto che appare in un’espressione SQL, mentre il termine “entità di riferimento” si riferisce a un oggetto che contiene un’espressione SQL.

Di seguito sono riportati i diversi tipi di dipendenze in SQL.

  • Dipendenza funzionale
  • Dipendenza completamente funzionale
  • Dipendenza multivalore
  • Dipendenza transitiva
  • Dipendenza parziale

I join sono una parte fondamentale della gestione dei dati in SQL. Consentono di unire due o più tabelle per creare un’unica tabella che può essere utilizzata per analizzare i dati. Forniscono inoltre un modo per filtrare i risultati in base a criteri in una singola tabella, che può essere utile quando si tenta di trovare righe o colonne specifiche in una tabella di grandi dimensioni.

Esistono quattro tipi principali di JOIN in SQL: INNER JOIN, OUTER JOIN, CROSS JOIN e SELF JOIN.

Quali sono gli operatori di insiemi in SQL?

I dati di una o più tabelle dello stesso tipo possono essere combinati utilizzando l’operatore set. Gli operatori SQL set e SQL join sono simili, ma ci sono alcune differenze fondamentali. Gli operatori di insiemi SQL raccolgono record da query diverse, mentre i join SQL combinano colonne di tabelle diverse. Le query SQL composte sono quelle che includono operazioni sugli insiemi.

Conclusione

Spero che queste domande sull’intervista SQL ti offrano una buona immagine di cosa aspettarsi dal punto di vista dell’intervista. È necessaria una maggiore esposizione all’ambiente SQL per decifrare l’intervista SQL; questo può essere ottenuto studiando in modo approfondito SQL. Per valutare i principi chiave di SQL, devi anche esercitarti con le domande del colloquio di query SQL e continuare a leggere.

Se stai cercando chiarimenti sulle query SQL, visita il cheat sheet di SQL per ottenere maggiori informazioni sulle istruzioni SQL.

Per acquisire esperienza pratica eseguendo query SQL, dai un’occhiata a queste piattaforme per esercitazioni SQL.