Quale istruzione SQL permette di leggere i dati di una tabella senza modificarli?
Risposta : SELECT
SELECT legge le righe richieste. INSERT aggiunge, UPDATE modifica e DELETE elimina righe.
Ripassa SQL e database: ecco una selezione di domande di ogni livello, con risposta e spiegazione. Per metterti alla prova senza vedere le risposte, gioca ai quiz.
Gioca ai quiz SQL e databaseRisposta : SELECT
SELECT legge le righe richieste. INSERT aggiunge, UPDATE modifica e DELETE elimina righe.
Risposta : DISTINCT
DISTINCT conserva una sola occorrenza di ogni riga identica nel risultato.
Risposta : WHERE
WHERE filtra le righe in base a una condizione, per esempio WHERE age >= 18.
Risposta : ORDER BY
ORDER BY nome ASC ordina in ordine crescente, DESC in ordine decrescente.
Risposta : INSERT
INSERT INTO aggiunge una riga; UPDATE modifica righe esistenti, CREATE crea una tabella e ALTER ne cambia la struttura.
Risposta : Una n-upla, detta anche record
Una riga è una n-upla, detta anche record; una colonna corrisponde a un attributo.
Risposta : Identificare in modo univoco ogni riga
La chiave primaria non può essere né NULL né ripetuta, il che permette di identificare ogni riga senza ambiguità.
Risposta : 1970
Nel 1970 Edgar F. Codd pubblica l'articolo fondatore del modello relazionale, su cui si basa SQL.
Risposta : INNER JOIN
INNER JOIN conserva solo le corrispondenze; LEFT JOIN mantiene tutte le righe della tabella di sinistra, con NULL quando manca una corrispondenza.
Risposta : SELECT ville, COUNT(*) FROM clients GROUP BY ville
GROUP BY ville raggruppa le righe per ville, e COUNT(*) conta le righe di ogni gruppo.
Risposta : HAVING
WHERE filtra le righe prima del raggruppamento; HAVING filtra i gruppi, per esempio HAVING COUNT(*) > 5.
Risposta : AVG
AVG calcola la media dei valori non NULL di una colonna numerica.
Risposta : WHERE email IS NULL
Un confronto con = o <> a NULL non è mai vero: si usa IS NULL oppure IS NOT NULL.
Risposta : Fornisce l'elenco dei client_id presenti nella tabella commandes
La sottoquery restituisce un elenco di valori; la query esterna conserva i clienti il cui id compare in questo elenco.
Risposta : Fare riferimento alla chiave primaria di un'altra tabella
Una chiave esterna fa riferimento a una chiave, in genere la chiave primaria di un'altra tabella; il DBMS può rifiutare un valore assente da quella tabella.
Risposta : UNION
UNION unisce i risultati eliminando i duplicati; UNION ALL li conserva tutti, senza questa fase di eliminazione.
Risposta : Atomicità
Atomicità: una transazione viene eseguita per intero oppure non viene eseguita affatto. ACID comprende anche coerenza, isolamento e durabilità.
Risposta : READ COMMITTED
READ COMMITTED legge solo dati confermati, ma una stessa riga può cambiare tra due letture di una transazione.
Risposta : Essere in 1NF ed evitare dipendenze parziali su una chiave composta
La 2NF presuppone la 1NF e inoltre che nessun attributo non chiave dipenda solo da una parte di una chiave composta.
Risposta : Un albero B+
InnoDB organizza i suoi indici in alberi B+, le cui foglie sono collegate tra loro per le scansioni per intervallo.
Risposta : Mostra il piano di esecuzione previsto senza eseguire la query
EXPLAIN mostra il piano previsto (indici, ordine dei join) senza eseguire la query; EXPLAIN ANALYZE, invece, la esegue.
Risposta : Un nome dato a una query SELECT, rieseguita a ogni lettura
Una vista ordinaria non memorizza nulla: viene rieseguita a ogni lettura. Una vista materializzata, invece, conserva i propri risultati.
Risposta : Codice SQL eseguito automaticamente durante un INSERT, UPDATE o DELETE su una tabella
Un trigger viene eseguito automaticamente al verificarsi di un evento su una tabella; una stored procedure, invece, si richiama esplicitamente con CALL.
Risposta : Un sistema distribuito non garantisce insieme coerenza, disponibilità e tolleranza alle partizioni
Quando la rete si interrompe tra i nodi, un sistema distribuito deve scegliere tra coerenza e disponibilità.