Questão de Banco de Dados — SQL — FUNDATEC 2023
- Código
- qq890175
- Banca
- FUNDATEC
- Órgão
- BRDE
- Ano
- 2023
- Nível
- Superior
- Cargo
- Analista de Sistemas - Desenvolvimento de Sistemas

- A0
- B2
- C3
- D6
- E7

GabaritoC — 3
Gabarito: letra C — a conta chega a 3 — alternativa C.
COUNT é uma função de agregação que conta quantas linhas existem em um conjunto de resultados. Quando usamos COUNT(coluna), ela conta apenas as linhas em que essa coluna não é nula. O operador LIKE é usado para comparar textos com padrões, e o curinga '%' representa qualquer sequência de caracteres, inclusive nenhum.
A consulta funciona em duas etapas: primeiro o WHERE filtra as linhas da tabela, depois o COUNT conta quantas sobraram. O padrão 'D%' significa que o NOME deve começar com a letra D, seguida de qualquer coisa (ou nada). Por isso, 'D', 'DA' e 'DB' atendem ao critério, mas 'A', 'B', 'C' e 'E' não.
Esta questão testa se você sabe que o WHERE é aplicado antes da contagem e que '%' casa com zero ou mais caracteres. O erro mais comum é contar todas as linhas da tabela ou confundir '%' com '_'.
tabela AREA com colunas ID e NOME
nomes na tabela: A, B, C, D, DA, DB, E
comando: SELECT COUNT(ID) FROM AREA WHERE NOME LIKE 'D%'
O que queremos: o número de linhas retornado pelo comando
O comando pede para contar apenas as linhas cujo NOME começa com a letra D. O operador LIKE com o padrão 'D%' faz exatamente isso: o '%' significa 'qualquer coisa depois', inclusive nada. Então precisamos identificar quais nomes da tabela satisfazem essa condição.
Achar que 'D%' exige pelo menos um caractere depois do D, excluindo o nome 'D' — mas '%' casa com zero caracteres também.
Depois de filtrar, a função COUNT(ID) conta quantas linhas passaram pelo WHERE. Como ID é a chave primária, não há valores nulos, então COUNT(ID) conta todas as linhas filtradas.
Por que esta fórmula: COUNT é a função de agregação que conta linhas; aqui ela recebe a coluna ID, mas como não há nulos, o resultado é o mesmo que COUNT(*).
De onde vem cada valor: = enunciado: coluna da tabela AREA
Contar todas as 7 linhas da tabela, esquecendo que o WHERE filtra antes.
Resposta: 3 — alternativa C
Link permanente: /questoes/qq890175