Supondo que a coluna sequencia da tabela T, anteriormente definida, deveria conter números inteiros em sequência contínua,

Análise de Dados ATENÇÃO! Nas próximas três questões , considere as tabelas de banco de dados T, TX e DUAL, exibidas com suas respectivas in...
Análise de Dados

ATENÇÃO!
Nas próximas três questões, considere as tabelas de banco de dados T, TX e DUAL, exibidas com suas respectivas instâncias a seguir.

T

considere as tabelas de banco de dados T, TX e DUAL, exibidas com suas respectivas instâncias a seguir

TX

considere as tabelas de banco de dados T, TX e DUAL, exibidas com suas respectivas instâncias a seguir

DUAL

considere as tabelas de banco de dados T, TX e DUAL, exibidas com suas respectivas instâncias a seguir

Nas colunas das três tabelas, o tipo é o de número inteiro. Em todos os comandos SQL, considera-se o NULL como um valor desconhecido (unknown).

FGV 2022 - QUESTÃO 59
Supondo que a coluna sequencia da tabela T, anteriormente definida, deveria conter números inteiros em sequência contínua, seria preciso descobrir os intervalos de valores faltantes. Um valor é considerado faltante quando a) é um número inteiro n entre o menor e o maior valor da tabela, tal que n não esteja presente na tabela, ou b) é um número presente na tabela T, com valor nulo na coluna caracteristica.

FGV 2022 - QUESTÃO 59

O comando SQL que produz o resultado acima, a partir da instância inicialmente definida para a tabela T, é:

(A) select t1.sequencia 'inicio', t2.sequencia 'fim', 
 t2.sequencia - t1.sequencia -1 faltantes
from T t1, T t2
where t1.sequencia < t2.sequencia
 and t1.sequencia <> t2.sequencia -1
 and not exists
 (select * from T t3
 where t3.sequencia > t1.sequencia
 and t3.sequencia < t2.sequencia)

(B) select t1.sequencia +1 'inicio',
 t2.sequencia -1 'fim',
 t2.sequencia - t1.sequencia -1 faltantes
from T t1, T t2
where t1.sequencia < t2.sequencia
 and t1.sequencia <> t2.sequencia -1
 and t1.caracteristica is not null
 and t2.caracteristica is not null
 and (not exists 
 (select * from T t3
 where t3.sequencia > t1.sequencia
 and t3.sequencia < t2.sequencia
 and t3.caracteristica is not null))

(C) select t1.sequencia +1 'inicio',
 t2.sequencia -1 'fim',
 t2.sequencia - t1.sequencia -1 faltantes
from T t1, T t2
where t1.sequencia <> t2.sequencia -1
 and t1.caracteristica is not null
 and t2.caracteristica is not null
 and (not exists 
 (select * from T t3
 where t3.sequencia > t1.sequencia
 and t3.sequencia < t2.sequencia
 and t3.caracteristica is not null)
 or exists
 (select * from T t3
 where t3.sequencia > t1.sequencia
 and t3.sequencia < t2.sequencia
and t3.caracteristica is null))

(D) select t1.sequencia +1 'inicio',
 t2.sequencia -1 'fim',
 t2.sequencia - t1.sequencia -1 faltantes
from T t1, T t2
where t1.sequencia < t2.sequencia
 and t1.sequencia <> t2.sequencia -1
 and t1.caracteristica is not null
 and t2.caracteristica is not null
 and exists 
 (select * from T t3
 where t3.sequencia > t1.sequencia
 and t3.sequencia < t2.sequencia)

(E) select t1.sequencia +1 'inicio',
 t2.sequencia -1 'fim',
 t2.sequencia - t1.sequencia -1 faltantes
from T t1, T t2
where t1.sequencia < t2.sequencia
 and t1.sequencia <> t2.sequencia -1
 and t1.caracteristica is not null
 and t2.caracteristica is not null
 and not exists
 (select * from T t3
 where t3.sequencia > t1.sequencia
and t3.sequencia < t2.sequencia)

QUESTÃO ANTERIOR:

GABARITO:
(B) select t1.sequencia +1 'inicio',
 t2.sequencia -1 'fim',
 t2.sequencia - t1.sequencia -1 faltantes
from T t1, T t2
where t1.sequencia < t2.sequencia
 and t1.sequencia <> t2.sequencia -1
 and t1.caracteristica is not null
 and t2.caracteristica is not null
 and (not exists 
 (select * from T t3
 where t3.sequencia > t1.sequencia
 and t3.sequencia < t2.sequencia
 and t3.caracteristica is not null))

RESOLUÇÃO:
Não temos resolução para essa questão! Você sabe explicar? Copie o link dessa página e envie sua resolução clicando AQUI!

PRÓXIMA QUESTÃO:

QUESTÃO DISPONÍVEL EM:

COMENTÁRIOS

Todas as Postagens Não foram encontradas postagens VEJA TODOS Leia Mais Resposta Cancelar resposta Deletar Por Home PAGINAS POSTS Veja todos RECOMENDADOS PARA VOCÊ Tudo Sobre ARQUIVOS BUSCAR TODOS OS POSTS Nenhuma postagem foi encontrada Voltar para Home Domingo Segunda Terça Quarta Quinta Sexta Sábado Dom Seg Ter Qua Qui Sex Sab Janeiro Fevereiro Março Abril Maio Junho Julho Agosto Setembro Outubro Novembro Dezembro Jan Fev Mar Abr Maio Jun Jul Ago Sep Out Nov Dez Agora mesmo 1 minuto atrás $$1$$ minutos agora 1 hora atrás $$1$$ horas atrás Ontem $$1$$ dias atrás $$1$$ semanas atrás mais de 5 semanas atrás Seguidores Seguir CONTEÚDO PREMIUM BLOQUEADO PASSO 1: Compartilhar em uma rede social PASSO 2: Clique no link na sua rede social Copiar todo o código Selecionar todo o código Todos os códigos foram copiados Não é possível copiar os códigos / textos, pressione [CTRL] + [C] para copiar Tabela de conteúdo