Subqueries � domande disposte all'interno di una dichiarazione attuale di SQL. MySQL offre un sostegno molto limitato i subqueries, comunque Oracle e DB2 completamente li sostengono. Possono esistere in c'� ne di seguenti tipi di dichiarazione di SQL.
Sintassi:
SELECT "column_name1"
FROM "table_name1"
WHERE "column_name2" [Comparison Operator]
(SELECT "column_name3"
FROM "table_name2"
WHERE [Condition])
Esempio:
Tabella: Store_Information
Store_name
Sales
Date
Los Angeles
$1500
Jan-05-2005
San Diego
$250
Jan-07-2005
Los Angeles
$300
Jan-08-2005
Boston
$700
Jan-08-2005
Table: Internet_Sales
Date
Sales
Jan-07-2005
$250
Jan-10-2005
$535
Jan-11-2005
$320
Jan-12-2005
$750
Se desideriamo usare un subquery per trovare le vendite di tutti i depositi nella regione ad ovest. Allora usiamo la seguente dichiarazione di SQL:
SELECT SUM(Sales) FROM Store_Information
WHERE Store_name IN
(SELECT store_name FROM Geography
WHERE region_name = 'West')
Uscita:
SUM(Sales)
2050
Qui invece di unire le due tabelle direttamente ed allora aggiunta in su soltanto delle vendite ammontare per i depositi nella regione ad ovest, usiamo il subquery per scoprire che i depositi sono nella regione ad ovest ed allora aggiungere le vendite ammontiamo per questi depositi.