Lista de exercícios de Bases de dados e SQL com respostas
Lista de exercícios de Bases de dados e SQL grátis para imprimir: 8 exercícios do nível fácil ao nível de prova, com gabarito. Imprima ou salve como PDF.
Para professores: pode imprimir, copiar e usar em aula gratuitamente. Cada nova folha tem novos valores e o seu próprio gabarito. Agradecemos um link para o ExamProblems na página da sua disciplina.
Nome: ____________________ Data: ____________
1.Fácil
Qual instrução apaga uma tabela inteira, incluindo sua estrutura?
- ADELETE FROM
- BTRUNCATE ROWS
- CDROP TABLE
- DREMOVE TABLE
2.Fácil
Uma chave estrangeira (foreign key) é:
- AUma chave usada por usuários estrangeiros
- BUma coluna que referencia a chave primária de outra tabela
- CUma coluna cujos valores devem ser únicos em todas as linhas da tabela
- DUma chave que é sempre criptografada
3.Fácil
Qual função de agregação conta linhas?
- ACOUNT
- BMAX
- CAVG
- DSUM
4.Média
Qual consulta retorna o maior salário de cada departamento?
- ASELECT dept, MAX(salary) FROM emp ORDER BY dept
- BSELECT MAX(dept), salary FROM emp GROUP BY salary
- CSELECT dept, salary FROM emp WHERE salary = MAX(salary)
- DSELECT dept, MAX(salary) FROM emp GROUP BY dept
5.Média
O que SELECT name, CASE WHEN grade >= 5,5 THEN 'pass' ELSE 'fail' END FROM results retorna?
- AUm erro, porque CASE não é permitido no SELECT
- BSó os alunos aprovados
- CCada nome com o rótulo 'pass' ou 'fail', conforme a nota
- DO número de alunos aprovados e reprovados
6.Média
Por que SELECT price * 2 AS double_price FROM t WHERE double_price > 10 falha na maioria dos bancos de dados?
- ANão se permite aritmética na lista do SELECT
- BWHERE é avaliado antes da lista do SELECT, então o alias ainda não existe
- CWHERE só pode comparar colunas de texto
- DAliases não podem conter sublinhado
7.Difícil
A consulta FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.status = 'paid' descarta inesperadamente os clientes sem pedidos. Por quê?
- Astatus é uma palavra reservada
- BA condição do WHERE sobre o rejeita as linhas preenchidas com NULL, transformando-o num inner join
- CO join deveria usar USING em vez de ON
- DLEFT JOIN nunca mantém as linhas sem correspondência
8.Difícil
Qual é o resultado de SELECT COUNT(col) FROM t se todos os valores de col forem NULL e a tabela tiver 10 linhas?
- A10
- BNULL
- C0
- DUm erro