Comprender las subconsultas
Una subconsulta es una instrucción SELECT anidada dentro de otra consulta. La posibilidad de anidar una consulta dentro de otra mejorará su capacidad de crear consultas eficaces en T-SQL. En general, las subconsultas se evalúan una vez y proporcionan sus resultados a la consulta externa.
Trabajar con subconsultas
Una subconsulta es una instrucción SELECT anidada o incrustada en otra consulta. La consulta anidada, que es la subconsulta, se conoce como consulta interna. La consulta que contiene la consulta anidada es la consulta externa.
El propósito de una subconsulta es devolver resultados a la consulta externa. La forma de los resultados determinará si la subconsulta es una subconsulta escalar o multivalor:
- Las subconsultas escalares devuelven un solo valor. Las consultas externas deben procesar un único resultado.
- Las subconsultas multivalor devuelven un resultado muy similar a una tabla de una sola columna. Las consultas externas deben poder procesar varios valores.
Además de la elección entre subconsultas escalares y multivalor, las subconsultas pueden ser independientes o pueden correlacionarse con la consulta externa:
- Las subconsultas independientes se pueden escribir como consultas independientes, sin dependencias de la consulta externa. Una subconsulta independiente se procesa una vez, cuando la consulta externa se ejecuta y pasa sus resultados a esa consulta externa.
- Las subconsultas correlacionadas hacen referencia a una o varias columnas de la consulta externa y, por tanto, dependen de ella. Las subconsultas correlacionadas no se pueden ejecutar por separado desde la consulta externa.