Gabarito disponível
Julgue os seguintes itens, que versam sobre administração de banco de dados.
Considere que os comandos SQL a seguir tenham sido executados de forma bem-sucedida.
CREATE TABLE TABELA_TESTE (a integer, b varchar);
INSERT INTO TABELA_TESTE (a) VALUES (5);
INSERT INTO TABELA_TESTE (b) VALUES ('FUB');
INSERT INTO TABELA_TESTE (a) VALUES (7);
Nessa situação, o resultado da execução da consulta SELECT COUNT(a), AVG(a) FROM TABELA_TESTE; será o apresentado a seguir.
count | avg
------+-----
3 4
Considere que os comandos SQL a seguir tenham sido executados de forma bem-sucedida.
CREATE TABLE TABELA_TESTE (a integer, b varchar);
INSERT INTO TABELA_TESTE (a) VALUES (5);
INSERT INTO TABELA_TESTE (b) VALUES ('FUB');
INSERT INTO TABELA_TESTE (a) VALUES (7);
Nessa situação, o resultado da execução da consulta SELECT COUNT(a), AVG(a) FROM TABELA_TESTE; será o apresentado a seguir.
count | avg
------+-----
3 4
Resolução comentada
COUNT(a) ignora NULL e AVG(a) = 6, logo o resultado é 2 e 6.
A tabela tem três linhas: a=5, a=NULL (linha com b='FUB') e a=7. COUNT(a) conta apenas valores não nulos, resultando em 2. AVG(a) ignora nulos e vale (5+7)/2 = 6. O resultado apresentado (3 e 4) está errado.
Análise das alternativas
A) Errada: o resultado correto é count=2 e avg=6. B) Correta: aponta que o resultado apresentado está errado.
Referência: SQL: funções de agregação e tratamento de NULL.
Resolução comentada do VaiConcursos.