Flashcard FC296695
Como, por subconsulta correlacionada, verificar se existe ao menos um registro em outra tabela dentro de um intervalo de datas?
Linguagem SQL
CESGRANRIO · 2018
Como, por subconsulta correlacionada, verificar se existe ao menos um registro em outra tabela dentro de um intervalo de datas?
Mostrar resposta e comentário
Resposta
Resposta objetiva: usar uma subconsulta correlacionada que conte registros (COUNT(*)) com BETWEEN e exigir que o resultado seja >0.Exemplo de padrão:
SELECT A.* FROM TabelaA A
WHERE (SELECT COUNT(*) FROM TabelaB B WHERE B.fk=A.id AND B.data BETWEEN 'data1' AND 'data2') > 0
Explicação:
A subconsulta é executada para cada linha de A.
é inclusivo nos limites.
A condição >0 garante ao menos um registro encontrado.
Alternativa: usar EXISTS para mesma lógica com melhor desempenho.
Veja como foi cobrado:
https://flashcardsconcursos.com.br/portal/flashcard/295909
Conteúdo do catálogo FC Concursos · Atualizado em