Foi criada uma tabela de clientes através do sistema gerenci...
Foi criada uma tabela de clientes através do sistema gerenciador de banco de dados MySQL. A tabela cliente foi iniciada com os seguintes comandos:
INSERT INTO CLIENTE (ID, NOME, TELEFONE) VALUES (1, ‘EDUARDO RODRIGUES’,’(44) 9911-1122’);
INSERT INTO CLIENTE (ID, NOME, TELEFONE) VALUES (3, ‘ROBSON CABRAL’, ‘(41) 9922-3344’);
INSERT INTO CLIENTE (ID, NOME, TELEFONE) VALUES (2, ‘SILVANA NOGUEIRA’, NULL);
Considerando que os comandos de INSERT foram realizados com sucesso e a tabela agora possui somente os três registos executados pelos comandos apresentados, qual será o retorno se o seguinte SQL for executado para a tabela cliente?
SELECT COUNT(C.TELEFONE) FROM CLIENTE C
- Gabarito Comentado (1)
- Aulas (12)
- Comentários (0)
- Estatísticas
- Cadernos
- Criar anotações
- Notificar Erro
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
Alternativa correta: A
Vamos entender por que a alternativa correta é A, que diz que o comando SQL retornará uma coluna com a contagem 2.
A questão aborda conceitos fundamentais de banco de dados relacionais, especificamente com o uso do MySQL. Para resolver a questão, é necessário entender como funciona o comando SELECT COUNT
e como ele lida com valores NULL
.
O comando SELECT COUNT(C.TELEFONE) FROM CLIENTE C
conta o número de registros na coluna TELEFONE
que não são NULL
. Vamos analisar os dados na tabela CLIENTE
:
- ID: 1, NOME: 'EDUARDO RODRIGUES', TELEFONE: '(44) 9911-1122'
- ID: 3, NOME: 'ROBSON CABRAL', TELEFONE: '(41) 9922-3344'
- ID: 2, NOME: 'SILVANA NOGUEIRA', TELEFONE:
NULL
Observe que apenas dois registros têm valores na coluna TELEFONE
, enquanto o terceiro registro tem um valor NULL
.
Justificativa das alternativas:
A: Retornará uma coluna com a contagem 2. Correto! Somente dois registros têm valores não nulos na coluna TELEFONE
.
B: Retornará uma coluna com o valor NULO. Incorreto. A função COUNT
nunca retorna NULL
; ela retorna um número inteiro representando a contagem de valores não-nulos.
C: Retornará uma coluna com a contagem 3. Incorreto. Isso contaria todos os registros, mas estamos contando apenas os valores não-nulos da coluna TELEFONE
.
D: Retornará uma coluna com a contagem 0. Incorreto. Há valores não-nulos na coluna TELEFONE
, então a contagem não pode ser zero.
E: Retornará uma coluna com a contagem 1. Incorreto. Há dois registros com valores não-nulos na coluna TELEFONE
.
Gostou do comentário? Deixe sua avaliação aqui embaixo!
Clique para visualizar este gabarito
Visualize o gabarito desta questão clicando no botão abaixo