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?

  1. ADELETE FROM
  2. BTRUNCATE ROWS
  3. CDROP TABLE
  4. DREMOVE TABLE
2.Fácil

Uma chave estrangeira (foreign key) é:

  1. AUma chave usada por usuários estrangeiros
  2. BUma coluna que referencia a chave primária de outra tabela
  3. CUma coluna cujos valores devem ser únicos em todas as linhas da tabela
  4. DUma chave que é sempre criptografada
3.Fácil

Qual função de agregação conta linhas?

  1. ACOUNT
  2. BMAX
  3. CAVG
  4. DSUM
4.Média

Qual consulta retorna o maior salário de cada departamento?

  1. ASELECT dept, MAX(salary) FROM emp ORDER BY dept
  2. BSELECT MAX(dept), salary FROM emp GROUP BY salary
  3. CSELECT dept, salary FROM emp WHERE salary = MAX(salary)
  4. 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?

  1. AUm erro, porque CASE não é permitido no SELECT
  2. BSó os alunos aprovados
  3. CCada nome com o rótulo 'pass' ou 'fail', conforme a nota
  4. 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?

  1. ANão se permite aritmética na lista do SELECT
  2. BWHERE é avaliado antes da lista do SELECT, então o alias ainda não existe
  3. CWHERE só pode comparar colunas de texto
  4. 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ê?

  1. Astatus é uma palavra reservada
  2. BA condição do WHERE sobre o rejeita as linhas preenchidas com NULL, transformando-o num inner join
  3. CO join deveria usar USING em vez de ON
  4. 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?

  1. A10
  2. BNULL
  3. C0
  4. DUm erro

Gabarito

  1. 1. C · DROP TABLE
  2. 2. B · Uma coluna que referencia a chave primária de outra tabela
  3. 3. A · COUNT
  4. 4. D · SELECT dept, MAX(salary) FROM emp GROUP BY dept
  5. 5. C · Cada nome com o rótulo 'pass' ou 'fail', conforme a nota
  6. 6. B · WHERE é avaliado antes da lista do SELECT, então o alias ainda não existe
  7. 7. B · A condição do WHERE sobre o rejeita as linhas preenchidas com NULL, transformando-o num inner join
  8. 8. C · 0

Soluções completas passo a passo: pratique este tópico em examproblems.com.