Anterior Home Page Sumário E-Mail Próximo

Subconsulta

Sintaxe

subconsulta : ( especificação_de_consulta )

Regras

Uma subconsulta especifica uma coleção de valores obtidos do resultado de uma especificação de consulta. Ou seja, retorna a tabela formada pelas colunas especificadas na cláusula SELECT a partir da tabelas referidas na cláusula FROM e segundo as restrições das demais cláusulas.

O grau da tabela (número de colunas) derivada na subconsulta é o número de elementos da cláusula SELECT e deve ser igual a um, a não ser quando a subconsulta está especificada em um predicado EXISTS.

Podem ser feitas, nas cláusulas SELECT, WHERE ou HAVING da subconsulta, referências a colunas das tabelas referidas nas cláusulas FROM mais externas. É a chamada referência externa. Quando um nome de coluna aparece na subconsulta e esta não pertence às tabelas especificadas na cláusula FROM, ela pode referenciar colunas das tabelas tratadas pelos níveis externos da consulta.

Deste modo, podem existir situações ambíguas na definição das cláusulas. A SQL considera que uma referência a uma coluna numa subconsulta indica uma coluna de uma tabela referenciada no mesmo nível ou em algum dos níveis externos, priorizando o mais próximo.

Possíveis ambigüidades devem ser resolvidas com o uso de qualificadores ou identificadores de correlação.

Veja também Cláusula e Especificação de consulta.

Anterior Home Page Sumário E-Mail Próximo