Analise a tabela e a consulta escrita por um desenvolvedor, ...
Analise a tabela e a consulta escrita por um desenvolvedor, apresentadas a seguir.
select *, count(id) qtde, (select count(*) from processo where id > 5 and id < 10) num from processo group by id, descricao, data_cadastro;
Ao ser executada pelo desenvolvedor, a consulta retornará, como resultado,
Comentários
Veja os comentários dos nossos alunos
Que questão meus colegas e amigos!! COMPERVE ta de parábens!!
Primeiramente, quantas colunas teremos na tabela? Isto mesmo: 3 colunas (id, descricao e data_cadastro)
Observamos o SQL:
select *,
count(id) qtde,
(select count(*) from processo where
id > 5 and id < 10) num from processo group by id, descricao,
data_cadastro;
O candidato que ler rápido tal SQL ( me inclua neste conjunto) pensará: 3 colunas: 1ª: * ; 2ª count(id) ; 3ª select count...
Ai que mora o perigo:pois o asterisco significa:'pega todas as colunas meu parceiro!!!" portanto o SQL deverá ser
interpretado assim:
.
select * ( aqui retornará as 3 colunas da tabela processo: id; descricao e data_cadastro)
count(id) qtde; ( retornará 1 coluna)
select count(*) from processo... ( retornará 1 coluna)
Sendo assim: serão retornadas 5 colunas, validando o gabarito da questão;
GABARITO ALTERNATIVA B
@MAX Q, não deveria ter um "as" pra dar um alias às colunas qtde e num, não?
No caso para ficar mais claro deveria sim ter o AS, mas ele é opcional, a falta dele não gerará um erro
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo