Subqueries sind die Fragen, die innerhalb einer vorhandenen SQL Aussage gesetzt werden. MySQL bietet eine sehr begrenzte Unterstützung für subqueries an, gleichwohl Oracle und DB2 sie völlig stützen. Sie können in irgendwelchen der folgenden Arten der SQL Aussagen bestehen.
Syntax:
SELECT "column_name1"
FROM "table_name1"
WHERE "column_name2" [Comparison Operator]
(SELECT "column_name3"
FROM "table_name2"
WHERE [Condition])
Example:
Table: 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
Wenn wir ein subquery verwenden möchten, um die Verkäufe aller Speicher in der Westregion zu finden. Dann verwenden wir die folgende SQL Aussage:
SELECT SUM(Sales) FROM Store_Information
WHERE Store_name IN
(SELECT store_name FROM Geography
WHERE region_name = 'West')
Output:
SUM(Sales)
2050
Hier anstatt, die zwei Tabellen direkt zu verbinden und nur die Verkäufe dann oben zu addieren, für Speicher in der Westregion betragen, verwenden wir subquery, um herauszufinden, die Speicher in der Westregion sind und die Verkäufe dann zu addieren betragen für diese Speicher.