Português
Espero que você aprenda muito com este exercício.
Aprofunde-se mais nos seus estudos com : Exercícios Resolvidos

10 exercícios de sql resolvidos básicos e avançados para aprender sobre banco de dados relacionais e muito mais!

Para mandar bem em provas, exames e concursos treine e aprenda gratuitamente com esta lista de exercícios resolvidos básicos e avançados de SQL.


10 exercícios de sql resolvidos básicos e avançados para aprender sobre banco de dados relacionais e muito mais!

Os comandos DTL são responsáveis por gerenciar diferentes transações ocorridas dentro de um Banco de dados. Ele é dividido em três comandos, quais sejam:

A
BEGIN TRAN, COMMIT e ROLLBACK.
B
BEGIN DEVTRAN, DEFINE e BACK.
C
BEGIN LIBRARY, FIND e ROLLBACK.
D
BEGIN, DEFINE LIBRARY e SCROLL.
E
TRAN, FIND e FINISH.

Resolução

A linguagem SQL é subdivida em conjuntos de acordo com a operação que se deseja executar. Os subconjuntos principais são DML, DDL, DCL, DTL e DQL.


Em uma tabela chamada Contribuinte de um banco de dados padrão SQL aberto e em condições ideais há o campo idContribuinte do tipo inteiro e chave primária. Há também o campo nomeContribuinte que é do tipo varchar. Nessa tabela, um Auditor Fiscal deseja alterar o nome do contribuinte de id 1 para 'Marcos Silva'. Para isso, terá que utilizar o comando

A
ALTER TABLE Contribuinte SET nomeContribuinte='Marcos Silva' WHERE idContribuinte=1;
B
UPDATE Contribuinte SET nomeContribuinte='Marcos Silva' WHERE idContribuinte=1;
C
UPDATE nomeContribuinte TO 'Marcos Silva' FROM Contribuinte WHERE idContribuinte=1;
D
ALTER TABLE Contribuinte FIELD nomeContribuinte='Marcos Silva' WHERE idContribuinte=1;
E
UPDATE TABLE Contribuinte FIELD nomeContribuinte='Marcos Silva' WHERE idContribuinte=1;

Resolução

As instruções DML(Data Manipulation Language ou Linguagem de Manipulação de dados) são INSERT, UDPATE e DELETE, sendo que a instrução SELECT se enquadra como DQL(Data Query Language ou Linguagem de Consulta de Dados)


A expressão em SQL padrão descrita no quadro abaixo realiza uma consulta em um banco de dados que contém, pelo menos, duas tabelas, sendo uma denominada FUNCIONARIO e outra denominada DEPENDENTE, que armazenam informações sobre funcionários de uma empresa e seus dependentes, respectivamente.

A tabela FUNCIONARIO possui pelo menos três atributos: nome_func, sobrenome_func e cpf_func, que armazenam, respectivamente, o nome, o sobrenome e o número de CPF dos funcionários.

A tabela DEPENDENTE possui pelo menos quatro atributos: nome_depen, sobrenome_depen e cpf_depen, que armazenam, respectivamente, o nome, o sobrenome e o número de CPF dos dependentes, e cpf_func_resp, que armazena o número do CPF do funcionário responsável pelos dependentes.

SELECT nome_func, sobrenome_func
FROM FUNCIONARIO
WHERE NOT EXISTS (
SELECT * FROM DEPENDENTE
WHERE cpf_func = cpf_func_resp
);

Com base nas informações apresentadas, a consulta em SQL padrão acima descrita recupera :

A
o nome e o sobrenome de funcionários que não têm dependentes.
B
o nome e o sobrenome de todos os dependentes dos funcionários.
C
o nome e o sobrenome de funcionários que têm dependentes.
D
todos os atributos de funcionários que não têm dependentes.
E
todos os atributos de todos os dependentes dos funcionários.

Resolução

Na linguagem SQL uma subconsulta, subquery ou subselect é uma instrução SELECT utilizada dentro de outra instrução SELECT. Um subselect pode retornar somente um valor ou um conjunto de valores que serão usados por alguma cláusula do SELECT mais externo.


Julgue os próximos itens, no que diz respeito a comandos SQL de consulta.

  • I Subqueries de múltiplas colunas retornam várias colunas em uma mesma linha.
  • II A função UNION apresenta as linhas que existam simultaneamente em duas ou mais tabelas.
  • III A função EXISTS garante que o resultado de uma subquery somente seja mostrado se retornar uma ou mais linhas.
  • IV A função EXTRACT retorna uma das informações de um campo do tipo data (dia, mês, ano, hora, minuto ou segundo).

Assinale a opção correta.

A
Estão certos apenas os itens I e II.
B
Estão certos apenas os itens I e IV.
C
Estão certos apenas os itens II e III.
D
Estão certos apenas os itens III e IV.
E
Todos os itens estão certos.

Resolução

Procedimento armazenado ou Stored Procedure é uma coleção de comandos em SQL que encapsula tarefas repetitivas podendo ou não aceitar parâmetros de entrada e retornar dados de saída ou um valor de status (para indicar aceitação ou falha na execução).


Para calcular o número de produtos com nomes que terminam com a letra B, o Auditor testou os comandos abaixo.

  • I. SELECT COUNT(nomePro)
    FROM Produto
    WHERE nomePro BEGIN '%B';
  • II. SELECT COUNT(*)
    FROM PRODUTO
    WHERE SUBSTR(nomePro, -1)='B';
  • III. SELECT COUNT(*)
    FROM Produto
    WHERE nomePro LIKE '%B';
  • IV. SELECT COUNT(nomePro)
    FROM Produto
    WHERE SUBSTR(nomePro, 0)='B';

Mostrará o resultado desejado o que consta APENAS em:

A
III
B
I e IV
C
III e IV
D
I e II
E
II e III

Resolução

Gatilho ou trigger é um recurso presente nos bancos de dados que é executado sempre que um evento ocorre, como uma modificação de dados de uma tabela ou alteração de estrutura de uma tabela. É muito utilizada para ajudar a manter a consistência dos dados ou para propagar alterações em um determinado dado de uma tabela para outras. Em SQL, para se criar um trigger utiliza-se o comando CREATE TRIGGER, e para removê-lo deve-se usar DROP TRIGGER. Entre os modos de disparo de uma trigger, temos aquela que é disparada após a execução de algum comando sql(AFTER) e temos as que são executadas no lugar da query SQL(INSTEAD OF).


Na linguagem SQL, considerando duas tabelas A e B, para se obter o que está na Tabela A e não está na Tabela B, assim como o que está na Tabela B e não está na Tabela A é necessário usar o comando

A
outer excluding join.
B
right excluding join.
C
left excluding join.
D
middle excluding join.

Resolução

Na linguagem SQL são operadores lógicos os comandos AND, OR e NOT, sendo que o operador AND indica que duas condições devem ser verdadeiras para se exibir os dados, o operador OR indica que pelo menos uma das n condições deve ser verdadeira para se exibir os dados e o operador NOT realiza a inversão do resultado de uma operação lógica. Essas operações lógicas são as mesmas presentes na montagem de tabelas verdades para análise de proposições lógicas.


Considere a sintaxe SQL básica do comando para a criação de gatilhos:

CREATE TRIGGER ON ...

Nesse comando, as opções corretas do

A
evento disparador são: Insert, Delete e Update.
B
evento disparador são: Select, Group By e Inner Join.
C
evento disparador são: Commit, Rollback e Savepoint.
D
instante de execução são: First e Last.
E
instante de execução são: One e All.

Resolução

Supondo que uma tabela X que possui somente uma linha e uma coluna Y tenha três valores numéricos 25, 50, 32. A query SELECT SUM(Y) FROM X irá retornar o resultado 107 correspondente a soma de todos os valores da coluna Y.


Usando a linguagem SQL, um fiscal escreveu corretamente, em uma consulta, a expressão WHERE Nome-Contribuinte LIKE 'p%o'. Com isso ele obteve nomes de contribuintes como, por exemplo,

A
Paulo ou Pedro
B
Augusto e Jordão
C
Paulo ou Paula
D
Álvaro ou Augusto
E
Paula ou Patricio

Resolução

O comando UNION é usado para combinar o resultado de duas ou mais consultas SQL, retornando somente dados distintos. Já o comando UNION ALL também é usado para combinar o resultado de duas ou mais consultas SQL, sendo que o resultado final poderá conter dados duplicados quando presentes nos resultados das queries.


Considere o código SQL abaixo, que gerou a tabela ItemFatura.

CREATE TABLE ItemFatura(
idItemFatura INT NOT NULL,
idFatura INT NOT NULL,
descItemFatura VARCHAR(45),
valorItemFatura DOUBLE,
..I..
);

Considerando que a tabela ItemFatura possui chave primária composta pelos campos idItemFatura e idFatura, e que se uma fatura for excluída, automaticamente serão excluídos todos os seus itens, a lacuna I deve ser preenchida corretamente por

A
PRIMARY KEY (idItemFatura, FOREIGN KEY(idFatura)) REFERENCES Fatura(idFatura) ON DELETE CASCADE
B
PRIMARY KEY (idItemFatura, idFatura), FOREIGN KEY(idFatura) FROM Fatura(idFatura) WITH DELETE CASCADE
C
PRIMARY KEY (idItemFatura, idFatura), FOREIGN KEY (idFatura) REFERENCES Fatura(idFatura) ON DELETE CASCADE
D
PRIMARY KEY (idItemFatura, idFatura), FOREIGN KEY(idFatura) REFERENCES Fatura(idFatura)
E
PRIMARY KEY (idItemFatura, idFatura), FOREIGN KEY(idFatura) FROM Fatura(idFatura) ON DELETE CASCADE

Resolução


Um programador deseja definir uma query SQL para retornar os valores das colunas salario e job_id para determinado id de funcionário, de forma que ela seja executada de acordo com os parâmetros que receber. Considerando a existência da tabela e dos campos indicados, no Oracle PL/SQL digitou o bloco de comandos abaixo. Completa adequadamente a lacuna I a instrução: CREATE

Script SQL para definição de query parametrizada
A
FUNCTION obter_dados PARAMETERS
B
OR REPLACE VIEW obter_dados
C
OR REPLACE PROCEDURE obter_dados
D
TRIGGER obter_dados
E
STRUCTURE obter_dados

Perguntas e Respostas

1.  O que é ? e para que serve a linguagem SQL ?

2.  O que é uma SQL ANSI ?

3.  O que é uma query e como é escrita ?

4.  Quem criou o SQL ?

5.  Como excluir um banco de dados ?

Meus filhos terão computadores, sim, mas antes terão livros. Sem livros, sem leitura, os nossos filhos serão incapazes de escrever – inclusive a sua própria história.


exerciciosresolvidos.com.br

Acreditamos na educação gratuita e de qualidade. Nos ajude com sua opinião, sugestão ou crítica enviando um e-mail para: exerciciosresolvidosbr@gmail.com

Copyright © 2024. Built with ❤ Love