SubconsultaEscalar

A SubconsultaEscalar pode ser colocada em qualquer lugar onde uma Expressão é permitida. A SubconsultaEscalar torna o resultado da ExpressãoSeleção um valor escalar, porque retorna apenas o valor de uma única linha e coluna.

A consulta deve produzir uma única linha com uma única coluna.

Algumas vezes também é chamada de expressão de subconsulta.

Sintaxe

(Consulta)
-- a média sempre retorna um único valor,
-- portanto a subconsulta é uma SubconsultaEscalar
SELECT NOME, COMISS
FROM EQUIPE
WHERE EXISTS
(SELECT AVG(BÔNUS + 800)
FROM EMPREGADOS
WHERE COMISS < 5000
AND EMPREGADOS.ÚLTIMO_NOME = UPPER(EQUIPES.NOME)
);

-- Introduzir uma maneira de "gerar" novos valores de dados,
-- utilizando uma consulta que seleciona da cláusula VALUES
-- (que é uma forma alternativa de FULLSELECT).
-- Esta consulta mostra como pode ser criada uma tabela chamada "X",
-- possuindo duas colunas "R1" e "R2" e uma linha de dados.
SELECT R1,R2
FROM (VALUES('GRUPO 1','GRUPO 2')) AS X(R1,R2);

Conceitos relacionados
Interação com o sistema de dependências
Instruções CREATE
Instruções DROP
Instruções RENAME
Instruções SET
Referências relacionadas
Instrução ALTER TABLE
CALL (PROCEDIMENTO)
Cláusula CONSTRAINT
Instrução DECLARE GLOBAL TEMPORARY TABLE
Instrução DELETE
Cláusula FOR UPDATE
Cláusula FROM
Cláusula GROUP BY
Cláusula HAVING
INNER JOIN
Instrução INSERT
Operação JOIN
LEFT OUTER JOIN
Instrução LOCK TABLE
Cláusula ORDER BY
Consulta
RIGHT OUTER JOIN
ExpressãoSeleção
Instrução SELECT
ExpressãoTabela
SubconsultaTabela
Instrução UPDATE
VALUES Expressão
Cláusula WHERE
Cláusula WHERE CURRENT OF