Sottoquery - Parte 1
Fa parte della sezione Fondamenti del percorso SQL di Coddy. Lezione 38 di 72.
Le sottoquery ci permettono di combinare più query in una sola. Ad esempio, considera la seguente tabella <strong>employees</strong>:
| id | stipendio |
|---|---|
| 1 | 48 |
| 2 | 34 |
| 3 | 46 |
| 4 | 13 |
| 5 | 28 |
Ci serve una sottoquery perché non possiamo usare direttamente WHERE salary > AVG(salary), dato che le funzioni di aggregazione come AVG() non possono essere usate in una clausola WHERE: possono essere usate solo dopo che i dati sono stati raggruppati.
SELECT id, salary
FROM employees
WHERE salary > (
SELECT AVG(salary)
FROM employees
);Una sottoquery ci aiuta a trovare i dipendenti che guadagnano più dello stipendio medio dell'azienda, calcolando prima la media (query interna) e poi usando quel valore per filtrare i dipendenti (query esterna).
Poiché la media è: (48 + 34 + 46 + 13 + 28) / 5 = 33.8, questo è il risultato della query:
| id | salary |
|---|---|
| 1 | 48 |
| 2 | 34 |
| 3 | 46 |
Sfida
FacileTabelle e colonne disponibili:
shop:price,quantity,category,list_date
Scrivi una query per trovare tutti gli articoli (seleziona tutte le colonne) il cui prezzo è superiore al prezzo medio di tutti gli articoli.
Usa una sottoquery nella clausola WHERE per calcolare il prezzo medio, poi confronta il prezzo di ciascun articolo con questa media.
Provalo tu
Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Tutte le lezioni di Fondamenti
4Altre parole chiave
La parola chiave INLa parola chiave BETWEENLa parola chiave LIKELa parola chiave ASRiepilogo - Modelli di telefoni cellulari2Condizioni
Basi delle condizioniLa parola chiave ANDLa parola chiave ORLa parola chiave NOTCombinare più condizioniParentesiValori booleani5Operazioni aritmetiche
Operatori matematiciColonne matematicheL’operazione moduloLa funzione ROUND()3Formato di restituzione specifico
Valori nullOrdinare i risultati Parte 1Ordinare i risultati Parte 2Riepilogo - Azienda di sicurezza informaticaLimitare il numero di recordRiepilogo - Fabbrica di veicoli6Sfide introduttive
Ripasso - Elezione parlamentareRipasso - Arresto di un criminale da parte della poliziaRipasso - Contenitore per bevande da barRipasso - Progetta nuove colonne9Tabelle multiple
JOIN di base, parte 1JOIN di base, parte 2Riepilogo - JOINSelf joinRiepilogo - Self joinUNIONSemplificare le query, parola chiave WITHRiepilogo - Query con WITHRiepilogo - Impresa edile immobiliare12Funzioni finestra, parte 2
Funzioni RANK e DENSE_RANKRipasso: RANK e DENSE_RANKFunzione NTILEFunzioni di aggregazioneCriteri ROWS e RANGEEsercitati da solo: Playground SQL