子查询(subquery)是一种很常见的应用,不论是查询、新增、修改或删除都有可能出现。子查询是一个放在左右刮号中的「SELECT」叙述,而这个查询叙述会放在另一个SQL叙述中。在执行一些工作的时候,使用子查询可以简化SQL叙述。以查询「人口比美国多的国家」来说,你要先执行下列查询美国人口数量的叙述:
知道美国人口数量以后,再执行下列的叙述就可以传回人口比美国多的国家了:
以这样的查询来说,你要执行两次查询叙述来完成这个工作。不过遇到类似这样的需求时:
你就可以考虑把它们写成一个叙述就可以了:
上列的范例是一种很常见的子查询应用,使用子查询的好处是不用执行多次查询就可以完成工作,这样可以简化查询的工作;对于处理资料的应用程式来说,也可以节省一些程式码。