Buscar

FUNDAMENTOS DE BANCOS DE DADOS

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 30 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 30 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 30 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

1 
 Questão 
 
Sobre múltiplas visões de dados, assinale a alternativa correta. 
 
 
É obtida com a redundância de dados. 
 
É um problema dos sistemas tradicionais. 
 É importante que usuários possam ter visões diferentes da base de dados. 
 
Deve ser evitada para que haja integridade de dados. 
 
Representa a forma como os dados são armazenados em cada SGBD. 
Respondido em 11/12/2020 19:16:54 
 
 
Explicação: 
Como um conjunto de informações pode ser utilizada por um conjunto diferenciado de usuários, é 
importante que estes usuários possam ter visões diferentes da base de dados. Uma visão é definida 
como um subconjunto de uma base de dados, formando, deste modo, um conjunto virtual de 
informações. 
 
 
 
2 
 Questão 
 
O esquema que apresenta uma descrição global do banco de dados e que não fornece detalhes do 
modo como os dados estão fisicamente armazenados é o esquema: 
 
 
compartilhado 
 
privado 
 
interno 
 
externo 
 conceitual 
Respondido em 11/12/2020 19:18:09 
 
 
Explicação: 
As funções de cada um dos 3 esquemas são: 
Esquema Interno 
 Descreve a estrutura de armazenamento físico do banco de dados; 
 Utiliza um modelo de dados; 
 Lista detalhadamente os dados armazenados e os caminhos de acesso ao banco de dados. 
Esquema Conceitual 
 Descreve a estrutura do banco de dados como um todo; 
 Apresenta uma descrição global do banco de dados, que não fornece detalhes do modo 
como os dados estão fisicamente armazenados. 
Esquema Externo 
 Descreve as visões do banco de dados para um grupo de usuários; 
 Define, em cada visão, quais porções do banco de dados um 
grupo de usuários terá acesso. 
 
 
 
3 
 Questão 
 
Quando as mudanças feitas no arquivo de uma aplicação não são automaticamente realizadas nos 
arquivos das outras aplicações temos um problema de: 
 
 Redundância de dados 
 
Segurança 
 
Dificuldade de acesso 
 
Independência de dados 
 
Dependência entre programas e dados 
Respondido em 11/12/2020 19:15:35 
 
 
Explicação: 
A redundância de dados é a duplicação dos mesmos dados em dois ou mais arquivos. O problema da 
redundância é que as mudanças, ao serem feitas no arquivo de uma aplicação, não são 
automaticamente realizadas nos arquivos das outras aplicações, gerando a falta de integridade dos 
dados. 
 
 
 
4 
 Questão 
 
Na Arquitetura Ansi Sparc quando nos referimos a forma como os diferentes usuários enxergam o 
banco de dados estamos no: 
, 
 
 
Aplicativo 
 
Nivel Conceitual 
 
Sistemas Gerenciador de Banco de Dados 
 
Nivel Interno 
 Nivel Externo 
Respondido em 11/12/2020 19:15:46 
 
 
Explicação: 
O Nivel externo é aonde são definidas as diversas visões do banco de dados, ou seja, a forma como 
os usuários enxergam o banco de dados. 
 
 
 
5 
 Questão 
 
A autoinformação do banco de dados está caracterizada pela existencia : 
 
 
Dos aplicativos 
 
Do SGBD 
 
Do sistema de banco de dados 
 Do catálogo 
 
Dos arquivos de dados 
Respondido em 11/12/2020 19:15:52 
 
 
Explicação: 
O catalogo armazena os metadados, ou seja os dados que descrevem as estruturas de 
armazenamento do banco de dados,permitindo que o SGBD acesse os seus dados sem necessitar de 
informações externas. 
 
 
 
6 
 Questão 
 
O usuário de banco de dados responsável por fazer o seu gerenciamento é o: 
 
 
 
Projetista de Banco de Dados 
 
Desenvolvedor 
 
Gerente de Sistemas 
 Administrador de Banco de Dados 
 
Administrador de Dados 
Respondido em 11/12/2020 19:15:58 
 
 
Explicação: 
O administrador de banco de dados é responsavel pelo gerenciamento do SGBD e portanto do 
próprio banco de dados 
 
1 
 Questão 
 
No modelo entidade-relacionamento um retângulo representa _________ , um losango representa 
_________ e um círculo representa _________. 
Assinale a alternativa que preenche corretamente as lacunas acima, respectivamente: 
 
 
Entidade, atributo e relacionamento. 
 
Relacionamento, atributo e entidade. 
 Entidade, relacionamento e atributo. 
 
Atributo, entidade e relacionamento. 
 
Relacionamento, entidade e atributo. 
Respondido em 11/12/2020 19:19:23 
 
 
Explicação: 
O modelo entidade-relacionamento utiliza a ferramenta Diagrama Entidade Relacionamento (DER) 
para sua representação. Neste Diagrama, temos os seguintes construtores gráficos para: 
 Entidades: Retângulos com o nome da entidade dentro. 
 Relacionamento: Losangos com o nome do relacionamento dentro. 
 Atributos: Círculos ligados as entidades/relacionamentos. 
 Ligações entre entidades e os relacionamentos: Linhas. 
 
 
 
2 
 Questão 
 
O modelo que descreve a realidade do ambiente, constituindo uma visão global dos principais dados 
e relacionamentos, independente das restrições de implementação em um banco de dados, é o: 
 
 
Lógico 
 Conceitual 
 
Relacional 
 
 
Físico 
 
Essencial 
Respondido em 11/12/2020 19:16:50 
 
 
Explicação: 
O modelo conceitual é feito utilizando o Diagrama Entidade Relacionamento e destina-se a 
formalizar a realidade apresentada no mini mundo, formalizando-a 
 
 
 
3 
 Questão 
 
O modelo que descreve as estruturas de armazenamento de dados, tais como no SGBD como os 
tipos de dados esécíficos, índices, tipo de preenchimento destes campos, é: 
 
 Modelo físico 
 
Modelo lógico 
 
Modelo Relacional 
 
 
Modelo conceitual 
 
 
Modelo essencial 
Respondido em 11/12/2020 19:19:38 
 
 
Explicação: 
O modelo de dados físico define a forma como as tabelas serão criadas no SGBD, com os seus tipos 
de dados, os indices a serem utilizados e as opções de armazenamento 
 
 
 
4 
 Questão 
 
É composto(a) pelo conjunto de valores (dados) armazenados no banco de dados. Estes valores 
podem variar com o tempo. 
É a definição de: 
 
 
seleção 
 instância 
 
projeção 
 
esquema 
 
modelo 
Respondido em 11/12/2020 19:17:06 
 
 
Explicação: 
A instância é composta pelo conjunto de valores (dados) armazenados no banco de dados. Estes 
valores podem variar com o tempo. 
A instância é criada e alterada continuamente ao longo da utilização do sistema. 
 
 
 
5 
 Questão 
 
O Diagrama Entidade-Relacionamento é utilizado para elaboração do seguinte modelo de dados: 
 
 conceitual 
 
hierárquico 
 
 
físico 
 
externo 
 
interno 
Respondido em 11/12/2020 19:17:10 
 
 
Explicação: 
O Diagrama Entidade Relacionamento é a ferramenta utilizada no Projeto de Banco de Dados para 
realizar a modelagem conceitual 
 
 
 
6 
 Questão 
 
No modelo entidade-relacionamento a cardinalidade define: 
 
 Com quantas entidades de um tipo uma outra entidade pode se relacionar. 
 
As colunas de uma tabela que serão exibidas. 
 
A faixa dos valores que podem ser armazenados em determinada entidade. 
 
O tipo de dado da entidade. 
 
As linhas de uma tabela que serão exibidas. 
Respondido em 11/12/2020 19:17:24 
 
 
Explicação: 
O modelo entidade-relacionamento define regras de negócio que o banco de dados deve atender. 
Uma das regras é a cardinalidade que define se o relacionamento é obrigatório ou opcional 
(cardinalidade mínima) e com quantas entidades da entidade tipo B uma entidade da entidade tipo A 
pode se relacionar (cardinalidade máxima). 
 
1 
 Questão 
 
No modelo entidade-relacionamento, uma entidade se relaciona com: 
 
 
Conceitos 
 Outras entidades 
 
Relacionamento-tipo 
 
Modelos 
 
Atributos 
Respondido em 11/12/2020 19:20:33 
 
 
Explicação: 
Os principais componentes dos Modelos Entidade-Relacionamento (MER) são as entidades (coisas, 
objetos) sue as relações com outras entidades. 
 
 
 
2 
 Questão 
 
O Modelo ER (Entidade-Relacionamento) básico consiste em três classes de objetos que são: 
 
 
 
Índices, Entidades, Relacionamentos 
 
 Entidades, Relacionamentose Atributos 
 
 
Diagramas, Relacionamentos e Atributos 
 
Relacionamentos, Tabelas e Atributos 
 
 
Campos, Relacionamentos e Atributos 
 
Respondido em 11/12/2020 19:18:01 
 
 
Explicação: 
O DER tambem é conhecido como ERA , entidade, relacionamento e atributos, seus 3 
elementos básicos 
 
 
 
3 
 Questão 
 
Interpretar dados, acrescentando a ele um significado, faz parte do conceito de: 
 
 
Planificação 
 
Formalização 
 
Agregação 
 
Enumeração 
 Abstração 
Respondido em 11/12/2020 19:21:00 
 
 
Explicação: 
A abstração propicia que o ser humano, a partir de percepções iniciais comece a formar conceitos 
abstratos (informações) ao conseguir interpretar esses dados percebidos, acrescentando a ele um 
significado. 
 
 
 
4 
 Questão 
 
Trata-se de um conjunto de elementos do contexto do negócio, representados por um conjunto de 
atributos: 
 
 
Associação 
 
Dado 
 
Informação 
 
Classe 
 
 Entidade 
Respondido em 11/12/2020 19:18:26 
 
 
Explicação: 
No contexto do MER uma entidade é um objeto do mundo real concreto ou abstrato que é descrito 
pelas suas caracteristicas, chamadas atributos. 
 
 
 
5 
 Questão 
 
A realidade que esta sendo modelada durante o projeto de banco de dados denomina-se 
 
 
 
Modelo Descritivo 
 
 
Requisito de Informação 
 
 
Mundo Real 
 
 
Modelo Conceitual 
 Mini Mundo 
 
Respondido em 11/12/2020 19:21:19 
 
 
Explicação: 
MINI MUNDO é a parcela do mundo real que se vai modelar atendendo aos requisitos de informação 
 
 
 
6 
 Questão 
 
O conceito inverso ao conceito de generalização é o conceito de: 
 
 
instanciação 
 
agregação 
 
classificação 
 especialização 
 
particionamento 
Respondido em 11/12/2020 19:21:29 
 
 
Explicação: 
Classificação: Usada para definir um conceito como uma classe ou conjunto de objetos reais ou 
abstratos (a nível de elemento) caracterizados por propriedades comuns. 
Generalização: Usada para definir um conceito genérico (a nível de classe) a partir de conceitos 
específicos (a nível de classe) caracterizados por propriedades comuns. 
Agregação: Usada para definir objetos reais ou abstratos (a nível de elemento) e conceitos (a nível 
de classe) ¿compostos¿ a partir de objetos ou conceitos ¿componentes¿. 
Instanciação: Inverso da Classificação. 
Especialização: Inverso da Generalização. 
Particionamento: Inverso da Agregação. 
 
1 
 Questão 
 
Na modelagem conceitual de um banco observou-se que um aluno pode ou não estar matriculado 
em um curso, podendo estar matriculado em vários e um curso necessita de um ou mais alunos 
para ocorrer. Seguindo a orientação descrita no texto, assinale o conjunto de cardinalidades correto 
abaixo: 
 
 (0,N) e (1,N). 
 
 
(0,N) e (0,1). 
 
(0,1) e (0,N). 
 
(0,N) e (0,N). 
 
(0,1) e (1,N). 
Respondido em 11/12/2020 19:22:04 
 
 
Explicação: 
Quanto a aluno 
- pode não estar em nenhum curso - mínimo 0 
- pode estar me vários curso - máximo 1 
- cardinalidade - (0,N) 
Quanto a curso 
- precisar ter um aluno - mínimo 1 
- pode ter vários - máximo N 
- cardinalidade (1,N) 
 
 
 
2 
 Questão 
 
Se não houver nenhuma indicação especial a respeito de um atributo significa que ele é: 
 
 
Composto, monovalorado e único. 
 
Composto, obrigatório e multivalorado. 
 
Composto, multivalorado e não único. 
 
Simples, multivalorado e único. 
 Simples, monovalorado e não único. 
Respondido em 11/12/2020 19:22:14 
 
 
Explicação: 
Por padrão um atributo é simples, obrigatório, monovalorado e não único. 
 
 
 
3 
 Questão 
 
A cardinalidade (m:n) é utilizada quando: 
 
 Uma instancia de uma entidade se relaciona com muitas instancias de outra unidade, e 
vice-versa. 
 
A participação no relacionamento é obrigatória. 
 
A quantidade de relacionamentos entre instância A e B são obrigatoriamente diferentes. 
 
É utilizada cardinalidade cruzada. 
 
O atributo é multivalorado. 
Respondido em 11/12/2020 19:19:39 
 
 
Explicação: 
A cardinalidade (m:n) diz que uma instância da entidade A se relaciona com muitas instâncias da 
entidade B, e que uma instância da entidade B se relaciona com muitas instâncias da entidade da A. 
 
 
 
4 
 Questão 
 
Um atributo para ser identificador dever ser classificado como: 
 
 
Não único e simples 
 
 
Composto e Obrigatório 
 Único e Obrigatório 
 
Único e opcional 
 
Composto e monovalorado 
Respondido em 11/12/2020 19:19:44 
 
 
Explicação: 
o atributo identificador é aquele que irá dar origem a uma chave primária na tabela, desta forma 
deve ter as mesmas caracteristicas de unicidade e obrigatoriedade 
 
 
 
5 
 Questão 
 
Dentre as opções abaixo, selecione a que pode representar um atributo multivalorado para uma 
pessoa. 
 
 
Quantidade de filhos 
 
Local de Nascimento 
 
Data de nascimento 
 
Sexo 
 Nome do dependente 
Respondido em 11/12/2020 19:20:00 
 
 
Explicação: 
Atributos multivalorados são atributos cujo conteúdo é formado por mais de um valor. Uma pessoa 
pode ter mais de um dependente, portanto pode ter mais de um nome de dependente como 
atributo. 
O demais atributos aparecem apenas uma vez. 
 
 
 
6 
 Questão 
 
A afirmação: "um morador reside em uma e somente uma cidade e em uma cidade residem pelo 
menos um ou vários moradores", mostra que as cardinalidades de morador para cidade e de 
cidade para morador são respectivamente: 
 
 
(1,N) e (0,N) 
 
(1,N) e (0,1) 
 
 
(0,1) e (1,N) 
 
(0,N) e (1,1) 
 (1,1) e (1,N) 
Respondido em 11/12/2020 19:20:09 
 
 
Explicação: 
Quanto a morador 
- mora em uma cidade - mínimo 1 
- mora em somente uma - máximo 1 
- cardinalidade (1,1) 
Quanto a cidade 
- possui no mínimo um morador - mínimo 1 
- pode possuir vários - máximo N 
-cardinalidade (1,N) 
1 
 Questão 
 
"Descreve a sua estrutura, sendo constituído pelo conjunto de seus atributos e suas restrições." 
A definição acima refere-se a: 
 
 esquema 
 
campo 
 
valor 
 
tupla 
 
instância 
Respondido em 11/12/2020 19:20:37 
 
 
Explicação: 
O esquema de uma relação descreve a sua estrutura, sendo constituído pelo conjunto de seus 
atributos e suas restrições. 
 
 
 
2 
 Questão 
 
Qual o nome da regra em um banco de dados que assegura que um valor que apareça em uma 
relação para um dado conjunto de atributos também apareça para um certo conjunto de atributos 
em outra relação? 
 
 
 
Transitividade Composta. 
 
Dependência Semântica. 
 
 Integridade Referencial. 
 
 
Integridade Conceitual. 
 
 
Dependência Composta. 
 
Respondido em 11/12/2020 19:20:47 
 
 
Explicação: 
Integridade Referencial - As chaves estrangeiras têm que ser respeitadas, ou seja, se existe um 
determinado valor para o atributo na tabela onde ele é chave estrangeira, este valor deve existir na 
tabela onde ele é chave primária. 
Integridade semântica - Garante que o dado inserido em uma linha da tabela seja um valor válido. 
Para esse valor ser válido deve ser do mesmo tipo de dados definido na especificação da coluna na 
tabela. 
Dependência Transitiva - Uma dependência funcional transitiva ocorre quando uma colua, além de 
depender da chave primária da tabela, depende de outra coluna ou conjunto de colunas da tabela. 
 
 
 
3 
 Questão 
 
Para a transformação de atributos multivalorados em tabelas deve-se: 
 
 
Prever a quantidade máxima de valores e criar a quantidade necessária de atributos. 
 Criar uma nova tabela contendo a chave primária da tabela origem e o atributo 
multivalorado. 
 
Utilizar a chave estrangeira do atributo multivalorado. 
 
Definir um atributo com tipo capaz de assumir qualquer valor. 
 
Criar uma chave composta com todos os valores do atributo multivalorado. 
Respondido em 11/12/2020 19:23:41 
 
 
Explicação:Atributos multivalorados são transformados em uma tabela distinta e a chave primária da tabela 
origem é exportada para a nova tabela, onde irá compor a chave primária junto com o atributo. 
 
 
 
4 
 Questão 
 
Julgue as afirmativas abaixo: 
I-Para representar uma relação muitos-para-muitos, você deve criar uma terceira tabela, 
geralmente chamada de tabela de associação, que divide a relação muitos-para-muitos em duas 
relações um-para-muitos. 
II-Para representar uma relação muitos-para-muitos, insira a chave primária de cada uma das duas 
tabelas na terceira tabela. Como resultado, a terceira tabela registra cada ocorrência, ou instância, 
da relação. 
III-Para representar uma relação muitos-para-muitos, exporte a chave primária de uma tabela para 
a outra, como chave estrangeira. 
 
 
 
Somente a afirmação II está correta. 
 
 
Somente as afirmações II e III estão corretas 
 
Somente a afirmação III está correta. 
 
 
Somente a afirmação I está correta. 
 
 Somente as afirmações I e II estão corretas. 
 
Respondido em 11/12/2020 19:21:10 
 
 
Explicação: 
Na modelagem lógica de um relacionamento N:N criamos um terceira tabela e exportamos para 
está as chaves primarias das tabelas resultantes das entidades tipo que participam do relaciomento 
tipo 
 
 
 
5 
 Questão 
 
No modelo de banco de dados relacional, os dados são representados por meio de: 
 
 
Matrizes tridimensionais formadas por linhas, colunas e chaves. 
 
Vetores de tuplas. 
 
 Tabelas. 
 
Ponteiros, que são as chaves primárias e estrangeiras. 
 
Listas encadeadas de tuplas. 
Respondido em 11/12/2020 19:21:17 
 
 
Explicação: 
No modelo relacional, como o proprio nome diz, os dados são armazenados em TABELAS. 
Uma tabela na matemática é denominada Relação dai o nome MODELO RELACIONAL 
 
 
 
6 
 Questão 
 
Quando deve ser utilizada uma chave primária composta? 
 
 
Quando houver somente uma 
chave candidata. 
 
Quando for necessário garantir 
a integridade referencial. 
 
Quando a tabela possui atributo 
único. 
 Quando a tabela não possui 
atributo único e obrigatório. 
 
Quando for necessário 
referenciar dados de outra 
tabela. 
Respondido em 11/12/2020 19:24:09 
 
 
Explicação: 
Um atributo para ser chave primária deve obrigatoriamente ser único e obrigatório. 
Quando não existir atributo com estas características é necessário utilizar uma chave 
composta. 
1 
 Questão 
 
O comando que encerra uma transação fazendo com que todas as modificações pendentes passem a 
ser definitivas é: 
 
 
Exit 
 Commit 
 
Save 
 
Rollback 
 
Write 
Respondido em 11/12/2020 19:21:56 
 
 
Explicação: 
Transação é um conjunto de comandos que são vistos como uma operação única e que podem ser 
confirmados ou revertidos ao seu final. 
Uma transação começa com o comando "begin transaction" e termina com um dos dois comandos: 
 Commit: Encerra a transação corrente fazendo com que todas as modificações pendentes 
passem a ser definitivas. 
 Rollback: Encerra a transação corrente fazendo com que 
todas as modificações pendentes sejam desprezadas. 
 
 
 
2 
 Questão 
 
Foi criada uma tabela com o comando: 
CREATE TABLE COR 
(ID Numeric (4) Primary Key, 
Nome Varchar (20) Not Null) 
Para apagar a linha da tabela cujo atributo "Nome" seja "VERDE" deve ser utilizado o comando: 
 
 DELETE FROM COR WHERE NOME='VERDE' 
 
DELETE NOME='VERDE' FROM COR 
 
ERASE NOME='VERDE' FROM COR 
 
ERASE FROM COR WHERE NOME='VERDE' 
 
DROP TABLE VERDE 
Respondido em 11/12/2020 19:22:42 
 
 
Explicação: 
O comando delete é utilizado para excluirmos linhas em uma tabela e tem como sintaxe: 
DELETE FROM nome_tabela WHERE condição 
 
 
 
3 
 Questão 
 
Ao implementar um sistema de gerência de fornecedores, o desenvolvedor percebeu que não existia 
no banco de dados relacional da empresa qualquer representação da entidade PRODUTO que 
aparecia em seu modelo de dados. Para corrigir essa falha, preparou um comando SQL que alteraria 
o esquema do banco de dados. 
Tal comando SQL deve ser iniciado com 
 
 
 
 ALTER TABLE PRODUTO 
 
 
CREATE PRODUTO : TABLE 
 
 
 CREATE PRODUTO AS TABLE 
 
 CREATE TABLE PRODUTO 
 
ALTER SCHEMA ADD TABLE PRODUTO 
 
Respondido em 11/12/2020 19:22:56 
 
 
Explicação: 
A SOLUÇÃO SERIA CRIAR A TABELA PRODUTO COM O COMANDO CREATE TABLE 
 
 
 
4 
 Questão 
 
Supondo a existência de uma tabela PESSOA, o comando para eliminar a tabela de um SGBD 
PostgreSQL é: 
 
 
ERASE TABLE PESSOA 
 
DELETE TABLE PESSOA 
 
REMOVE TABLE PESSOA 
 DROP TABLE PESSOA 
 
CLEAN TABLE PESSOA 
Respondido em 11/12/2020 19:23:17 
 
 
Explicação: 
Para apagar uma tabela de um SGBD deve ser utilizado o comando 
DROP TABLE 
onde é o nome da tabela a ser apagada. 
 
 
 
5 
 Questão 
 
Considere o banco de dados relacional de uma clínica médica 
PACIENTE (id_pac, nome_pac, sexo, fone_pac) 
ESPECIALIDADE (id_espec, nome_espec) 
MEDICO (id_med, nome_med, fone_med, id_espec) 
CONSULTA (id_cons, dt_cons, vl_cons, id_pac, id_med) 
Dê o comando correspondente de Atualizar o nome da especialidade para a especialidade de id = 1. 
 
 
 Update ESPECIALIDADE Set nome_espec = 'Clínico Geral' Where id_espec = 1 
 
 Update ESPECIALIDADE Set nome_espec = 'Clínico Geral' Where id_espec != 1 
 
 
 Update ESPECIALIDADE Set nome_espec = 'Clínico Geral' Where id_espec <> 1 
 
 
Update ESPECIALIDADE Set nome_espec = 'Clínico Geral' Where id_espec > 1 
 
 
Update ESPECIALIDADE Set nome_espec = 'Clínico Geral' Where id_espec < 1 
 
Respondido em 11/12/2020 19:26:12 
 
 
Explicação: 
o comando que atualiza os dados é o de update 
 
 
 
6 
 Questão 
 
A seguinte instrução ocasiona qual procedimento no banco: 
CREATE TABLE PESSOAS ( ID_PESSOA INT NOT NULL PRIMARY KEY, PESSOA 
VARCHAR(26) ); 
 
 
 
Cria um identificador 
(ID_PESSOAS) que é a chave 
primária; 
 
 
Mostra a tabela tbPessoa. 
 
Cria a tabela pessoa com 3 
campos; 
 
 Cria a tabela pessoa com 2 
campos; 
 
 
Cria a tabela pessoa na forma 
descrita e com os campos 
preenchidos; 
 
Respondido em 11/12/2020 19:23:40 
 
 
Explicação: 
o COMANDO CREATE TABLE cria uma tabela 
1 
 Questão 
 
Considere o esquema de uma empresa conforme segue: 
Func (cod_func, nome, dta_nasc, salario, nro_depto, cod_superv) ; 
Depto (nro_depto, nome) ; 
Projeto (cod_proj, nome, duracao, nro_depto) ; 
Participa (cod_proj, cod_func, horas_trab). 
Marque a alternativa que contém o comando em SQL para recuperar o nome e o salário dos 
funcionários do departamento 5, com salário na faixa entre 1000 e 2000. 
 
 
 SELECT NOME, SALARIO FROM FUNC WHERE NRO_DEPTO = 5 AND SALARIO BETWEEN 
1000 AND 2000; 
 
 
 
SELECT NOME, SALARIO FROM FUNC WHERE SALARIO BETWEEN 1000 AND 2000; 
 
SELECT NOME, SALARIO FROM FUNC WHERE SALARIO = 1000 AND NRO_DEPTO BETWEEN 
1 AND 5; 
 
 
SELECT NOME, SALARIO FROM FUNC WHERE NRO_DEPTO = 5; 
 
 
SELECT NOME, SALARIO FROM FUNC WHERE NRO_DEPTO = 5 OR SALARIO BETWEEN 1000 
AND 2000; 
 
Respondido em 11/12/2020 19:26:50 
 
 
Explicação: 
O comando deve ter o between para definir a faixa dos salarios e o operador AND para ligar as duas 
condições 
 
 
 
2 
 Questão 
 
Sobre o comando SELECT, marque a alternativa FALSA. 
 
 
Pode concatenar colunas para mostrar como uma única coluna. 
 
Pode realizar operações aritméticas nos resultados retornados. 
 
Pode utilizar operadores lógicos para testar múltiplas condições. 
 Pode conter operador para eliminar tabelas selecionadas. 
 
Pode testar condições para selecionar linhas a serem exibidas. 
Respondido em 11/12/2020 19:24:19 
 
 
Explicação: 
O comando SELECT permite recuperar dados de uma ou mais tabelas. Não pode ser utilizado para 
eliminar tabelas. 
 
 
 
3Questão 
 
Dada a tabela criada com o comando SQL: 
CREATE TABLE NOME 
(PRIMEIRO VARCHAR(15), 
MEIO VARCHAR(15), 
ULTIMO VARCHAR(15)) 
Onde PRIMEIRO representa o primeiro nome de uma pessoa, MEIO representa o nome do meio da 
pessoa, e ULTIMO representa o último nome da pessoa, selecione o comando SQL que retorna uma 
única coluna contendo o nome completo das pessoas, colocando um espaço em branco entre cada 
um dos componentes do nome. 
 
 
SELECT PRIMEIRO, ' ', MEIO, ' ', ULTIMO FROM NOME 
 SELECT PRIMEIRO || ' ' || MEIO || ' ' || ULTIMO FROM NOME 
 
SELECT PRIMEIRO + ' ' + MEIO + ' ' + ULTIMO FROM NOME 
 
SELECT AGREG(PRIMEIRO, ' ', MEIO, ' ', ULTIMO) FROM NOME 
 
SELECT PRIMEIRO ' ' MEIO ' ' ULTIMO FROM NOME 
Respondido em 11/12/2020 19:27:09 
 
 
Explicação: 
O operador || é utilizado quando se deseja concatenar duas colunas. 
 
 
 
4 
 Questão 
 
Assinale a alternativa que selecione todos os clientes cujo código NÃO esteja entre 50 e 75. 
 
 
 
SELECT * FROM Cliente Where cliente_id BETWEEN 50 AND 75; 
 
 
SELECT * FROM Cliente Where cliente_id NOT BETWEEN 50 OR 75; 
 
 
SELECT * FROM Cliente Where cliente_id = 50 AND 75; 
 
 
 SELECT * FROM Cliente Where cliente_id >= 50 AND cliente_id <=75; 
 SELECT * FROM Cliente Where cliente_id NOT BETWEEN 50 AND 75; 
 
Respondido em 11/12/2020 19:24:46 
 
 
Explicação: 
É necessario utilizar not between para filtrar as linhas que estão fora da faixa 
 
 
 
5 
 Questão 
 
Assinale a alternativa que selecione todos os clientes que terminem com o nome 'Morais' 
 
 
 
Select * From Cliente Where nome like '%Mor' 
 
 
Select * From Cliente Where nome <> 'Morais' 
 
 
Select * From Cliente Where nome like '%M%' 
 Select * From Cliente Where nome like '%Morais' 
 
 
 Select * From Cliente Where nome like '%M' 
 
Respondido em 11/12/2020 19:25:00 
 
 
Explicação: 
É necessario o uso do like com o caracter curinga % 
 
 
 
6 
 Questão 
 
Dada a tabela criada com o comando SQL: 
CREATE TABLE NOME 
(PRIMEIRO VARCHAR(15), 
MEIO VARCHAR(15), 
ULTIMO VARCHAR(15)) 
Onde PRIMEIRO representa o primeiro nome de uma pessoa, MEIO representa o nome do meio da 
pessoa, e ULTIMO representa o último nome da pessoa, selecione o comando SQL que retorna o 
primeiro nome da pessoa que possui valor nulo no atributo MEIO. 
 
 
SELECT PRIMEIRO FROM NOME WHERE MEIO = '' 
 
SELECT PRIMEIRO FROM NOME WHERE MEIO IS NOT DEFINED 
 
SELECT PRIMEIRO FROM NOME WHERE MEIO = NULL 
 
SELECT PRIMEIRO FROM NOME WHERE MEIO = 0 
 SELECT PRIMEIRO FROM NOME WHERE MEIO IS NULL 
Respondido em 11/12/2020 19:25:13 
 
 
Explicação: 
O operador "IS NULL" visa determinar se no campo existe valor ou não (campo nulo). 
Um valor nulo é um valor que está indisponível, não foi atribuído, é desconhecido ou inaplicável, 
tornando inviável usar "=" no teste, pois como nulo não é valor, é ausência de valor, não pode ser 
igual ou diferente de qualquer outro. 
 
 Questão 
 
Considere a tabela criada com o comando 
CREATE TABLE PRODUTO ( 
ID NUMERIC(4) PRIMARY KEY, 
NOME VARCHAR(20), 
COR VARCHAR(10)) 
O comando que retorna a quantidade total de cores diferentes é: 
 
 
SELECT COUNT(*) FROM PRODUTO 
 
SELECT COUNT(COR) FROM PRODUTO 
 
SELECT DISTINCT COR FROM PRODUTO 
 SELECT COUNT(DISTINCT COR) FROM PRODUTO 
 
SELECT * FROM PRODUTO 
Respondido em 11/12/2020 19:28:21 
 
 
Explicação: 
O operador DISTINCT elimina os valores duplicados, retornando apenas uma vez cada valor. 
A função COUNT conta e mostra o total de linhas retornadas. 
 
 
 
2 
 Questão 
 
Abaixo segue parte do esquema do banco de dados Shark, sabendo-se que os atributos em negrito 
e sublinhados são chaves primárias e os atributos em itálico são chaves estrangeiras: 
AREA (CODAREA, NOMEAREA) 
LOCAL (CODLOCAL, CODAREA, NOMELOCAL) 
TUBARAO (IDTUBARAO, IDESPECIE, COMPRIMENTO, SEXO) 
CAPTURA (NUMCAPTURA, IDEMB, IDTUBARAO, CODLOCAL, LATITUDE, LONGITUDE, DATA, 
TEMPAGUA) 
Assinale a alternativa abaixo que representa uma consulta que exiba todos os dados de áreas e 
locais ordenados decrescentemente pelo nome do local. 
 
 
 
 SELECT * FROM AREA A INNER JOIN LOCAL L ON A.CODAREA = L.CODAREA ORDER 
NOMELOCAL DESC; 
 SELECT * FROM AREA A, LOCAL L WHERE A.CODAREA = L.CODAREA ORDER BY 
NOMELOCAL DESC; 
 
 
 SELECT * FROM AREA A, LOCAL L WHERE A.CODAREA = L.CODAREA ORDER NOMELOCAL 
ASC; 
 
 
SELECT * FROM AREA A, LOCAL L WHERE A.CODAREA = L.CODAREA ORDER NOMELOCAL 
DESC; 
 
 
SELECT * FROM AREA A INNER JOIN LOCAL L WHERE A.CODAREA = L.CODAREA ORDER 
BY NOMELOCAL DESC; 
 
Respondido em 11/12/2020 19:25:44 
 
 
Explicação: 
PARA ORDENARMOS DE FORMA DESCRECENTE PRECISAMOS UTILIZAR ORDER BY DESC 
 
 
 
3 
 Questão 
 
Considere a tabela criada com o comando 
CREATE TABLE PRODUTO ( 
ID NUMERIC(4) PRIMARY KEY, 
NOME VARCHAR(20), 
COR VARCHAR(10)) 
O comando que retorna as diferentes cores, sem repetição, é: 
 
 
SELECT * FROM PRODUTO 
 
SELECT COUNT(COR) FROM PRODUTO 
 
SELECT COUNT(DISTINCT COR) FROM PRODUTO 
 SELECT DISTINCT COR FROM PRODUTO 
 
SELECT COUNT(*) FROM PRODUTO 
Respondido em 11/12/2020 19:28:40 
 
 
Explicação: 
O operador DISTINCT elimina os valores duplicados, retornando apenas uma vez cada valor. 
 
 
 
4 
 Questão 
 
Baseado no modelo de banco de dados mostrado a seguir: 
CARRO(idcarro,placa,modelo,tipo,cor,ano,Km,valor,chassis,idfilial) 
ALUGUEL(NF,idcarro,idcliente,valor,CNH,dataIni,dataFim,idfuncionario) 
Mostre o tipo dos carros e quantos carros são do mesmo tipo: 
 
 
 
SELECT tipo, sum(tipo) FROM carro GROUP BY tipo; 
 
 
SELECT tipo, max(tipo) FROM carro GROUP BY tipo; 
 
 
SELECT tipo, count(*) FROM carro; 
 
 
SELECT tipo, sum(tipo) FROM carro GROUP BY sum(tipo); 
 
 SELECT tipo, count(*) FROM carro GROUP BY tipo; 
 
Respondido em 11/12/2020 19:29:02 
 
 
Explicação: 
Para a correta execução temos que contar utilizando count e agrupar utilizando Group By 
 
 
 
5 
 Questão 
 
Considere a tabela definida pelo comando SQL abaixo. 
Create table func ( 
nome varchar(50) not null, 
salario numeric(9,2) not null, 
cod_depto int null); 
Considere a consulta SQL abaixo: 
Select nome, salario 
from func 
where salario > 900 
and cod_depto is not null 
order by salario 
O requisito abaixo que NÃO é atendido por esta consulta é: 
 
 
 
 só considerar os registros que apresentem o atributo SALARIO maior que 900; 
 
 
 listar a coluna NOME da tabela FUNC; 
 
 
 listar a coluna SALARIO da tabela FUNC; 
 
 
só considerar os registros que apresentem o atributo COD_DEPTO não nulo; 
 
 apresentar o resultado em ordem alfabética. 
Respondido em 11/12/2020 19:29:19 
 
 
Explicação: 
Como a ordenação foi realizada por uma coluna numerica não apresentara a ordem alfabetica 
crescente no resultado 
 
 
 
6 
 Questão 
 
Considere a tabela criada com o comando 
CREATE TABLE PRODUTO ( 
ID NUMERIC(4) PRIMARY KEY, 
NOME VARCHAR(20), 
COR VARCHAR(10)) 
Dentre os comandos abaixo, selecione aquele que mostre uma linha contendo a quantidade de 
produtos que possuem cor VERDE. 
 
 
SELECT COUNT(*) FROM 
PRODUTO GROUP BY COR 
WHERE COR IS 'VERDE' 
 SELECT COUNT(*) FROM 
PRODUTO GROUP BY COR 
HAVING COR='VERDE' 
 
SELECT NOME FROM PRODUTO 
GROUP BY COR HAVING 
COR='VERDE' 
 
SELECT COUNT('VERDE') FROM 
PRODUTO GROUP BY COR 
 
SELECT COUNT(*) FROM 
PRODUTO GROUP BY COR 
WHERE COR='VERDE' 
Respondido em 11/12/2020 19:26:47 
 
 
Explicação: 
Ao se utilizar a cláusula GROUP BY, pode-se filtrar a seleção de dados antes deles serem 
agrupados ou depois do agrupamento. 
Para eliminar grupos que não atendam a uma determinada condição, utiliza-se a cláusula 
HAVING. 
1 
 Questão 
 
Qual o tipo de junção que retorna apenas as linhas relacionadas emduas tabelas? 
 
 Interior 
 
Direita 
 
Esquerda 
 
Cruzada 
 
Exterior 
Respondido em 11/12/2020 19:27:27 
 
 
Explicação: 
Existem 3 tipos de junção: 
 Cruzada: Retorna o produto cartesiano das duas tabelas, ou seja, a combinação de todas 
as linhas de uma tabela com todas as linhas de outra. 
 Interior: Retorna as linhas que estão relacionadas nas duas tabelas. 
 Exterior: Retorna as linhas relacionadas e as não relacionadas 
de uma ou das duas tabelas. 
 
 
 
2 
 Questão 
 
Considere o banco de dados relacional de uma escola no qual as chaves primárias e estrangeiras 
estão sublinhadas. 
PROFESSOR (ID_PROF, CPF, NOME) 
DISCIPLINA (ID_DISC, CARGA_HOR, NOME, ID_PROF) 
Dentre os comandos abaixo, selecione aquele que mostra os nomes de todos os professores e as 
disciplinas às quais estão relacionados. 
Se o professor não estiver relacionado a nenhuma disciplina seu nome deve aparecer na relação. 
Disciplinas sem professores relacionados não deve ser listada. 
Nenhuma outra informação além do nome do professor e da disciplina deve ser listada. 
 
 
SELECT * FROM PROFESSOR P, DISCIPLINA D 
 
SELECT P.NOME, D.NOME FROM DISCIPLINA D LEFT JOIN PROFESSOR P ON P.ID_PROF = 
D.ID_PROF 
 
SELECT P.NOME, D.NOME FROM PROFESSOR P INNER JOIN DISCIPLINA D ON P.ID_PROF = 
D.ID_PROF 
 SELECT P.NOME, D.NOME FROM PROFESSOR P LEFT JOIN DISCIPLINA D ON P.ID_PROF = 
D.ID_PROF 
 
SELECT P.NOME, D.NOME FROM DISCIPLINA D INNER JOIN PROFESSOR P ON P.ID_PROF = 
D.ID_PROF 
Respondido em 11/12/2020 19:27:41 
 
 
Explicação: 
Para retornar todos os professores é necessário fazer left join com a tabela professores à esquerda. 
 
 
 
3 
 Questão 
 
Baseado no modelo de banco de dados mostrado a seguir: 
FILIAL(idfilial(PK), nome, cidade,endereço,telefone) 
FUNCIONARIO(idfuncionario(PK),nome,endereço,telefone,salario,idfilial) 
CLIENTE(idcliente(PK),nome,cpf,endereço,telefone,cidade) 
CLIENTE_ESPECIAL(idcliente(PK),Km,desconto) 
CARRO(idcarro(PK),placa,modelo,tipo,cor,ano,Km,valor,chassis,idfilial) 
ALUGUEL(NF(PK),idcarro,idcliente,valor,CNH,dataIni,dataFim,idfuncionario) 
O nome dos clientes que são cadastrados como especiais? 
 
 
 
 SELECT c.nome cliente FROM cliente c, cliente_especial ce ON c.idcliente=ce.idcliente 
 
 
SELECT c.nome cliente FROM cliente c RIGHT JOIN cliente_especial ce ON 
c.idcliente=ce.idcliente 
 
 SELECT c.nome cliente FROM cliente c INNER JOIN cliente_especial ce ON 
c.idcliente=ce.idcliente 
 
 SELECT c.nome cliente FROM cliente c INNER JOIN cliente_especial ce 
 
 
 SELECT c.nome cliente FROM cliente c LEFT JOIN cliente_especial ce ON 
c.idcliente=ce.idcliente 
 
Respondido em 11/12/2020 19:27:51 
 
 
Explicação: 
Para sabermos o nome dos clientes especiais temos que fazer uma junção interior entre a tabela de 
clientes especiais e a de cliente. 
 
 
 
4 
 Questão 
 
Considere o banco de dados relacional de uma escola no qual as chaves primárias e estrangeiras 
estão sublinhadas. 
PROFESSOR (ID_PROF, CPF, NOME) 
DISCIPLINA (ID_DISC, CARGA_HOR, NOME, ID_PROF) 
Dentre os comandos abaixo, selecione aquele que mostra somente o nome do professor e o nome 
da disciplina ao qual o professor está relacionado. Nomes dos professores sem relação com 
disciplinas e nomes de disciplinas sem relação com professor não devem aparecer. 
 
 
SELECT * FROM PROFESSOR P, DISCIPLINA D WHERE P.ID_PROF = D.ID_PROF 
 
SELECT P.NOME, D.NOME FROM PROFESSOR P, DISCIPLINA D 
 
SELECT * FROM PROFESSOR P, DISCIPLINA D 
 
SELECT P.NOME, D.NOME FROM PROFESSOR P, DISCIPLINA D HAVING P.ID_PROF = 
D.ID_PROF 
 SELECT P.NOME, D.NOME FROM PROFESSOR P, DISCIPLINA D WHERE P.ID_PROF = 
D.ID_PROF 
Respondido em 11/12/2020 19:30:48 
 
 
Explicação: 
A sintaxe tradicional de inner join tem o seguinte formato: 
SELECT 
FROM tabela1, tabela2 
WHERE ; 
 
 
 
5 
 Questão 
 
Baseado no modelo de banco de dados mostrado a seguir: 
FILIAL(idfilial(PK), nome, cidade,endereço,telefone) 
FUNCIONARIO(idfuncionario(PK),nome,endereço,telefone,salario,idfilial) 
CLIENTE(idcliente(PK),nome,cpf,endereço,telefone,cidade) 
CLIENTE_ESPECIAL(idcliente(PK),Km,desconto) 
CARRO(idcarro(PK),placa,modelo,tipo,cor,ano,Km,valor,chassis,idfilial) 
ALUGUEL(NF(PK),idcarro,idcliente,valor,CNH,dataIni,dataFim,idfuncionario) 
O nome dos clientes que mesmo cadastrados no banco de dados da Locadora NÃO fizeram nenhum 
aluguel? 
 
 
 
SELECT c.nome cliente FROM aluguel a INNER JOIN cliente c ON a.idcliente=c.idcliente 
where a.idcliente IS NULL 
 
SELECT c.nome cliente FROM aluguel a LEFT JOIN cliente c ON a.idcliente=c.idcliente where 
a.idcliente IS NULL 
 
 SELECT c.nome cliente FROM aluguel a RIGHT JOIN cliente c ON a.idcliente=c.idcliente 
where a.idcliente IS NULL 
 
 
SELECT c.nome cliente FROM aluguel a, cliente c where a.idcliente=c.idcliente 
 
 
SELECT c.nome cliente FROM aluguel a, cliente c ON a.idcliente=c.idcliente 
 
Respondido em 11/12/2020 19:31:00 
 
 
Explicação: 
Como precisamos obter os não relacionados necessitamos fazer uma junção exterior 
 
 
 
6 
 Questão 
 
Abaixo segue parte do esquema do banco de dados Shark, sabendo-se que os atributos em negrito 
e sublinhados são chaves primárias e os atributos em itálico são chaves estrangeiras: 
ESPECIE (IDESPECIE, NOME_CIENTIFICO, DENTICAO, STATUS_EXTINCAO, HABITAT, 
TIPOREPRODUCAO) 
CAPTURA (NUMCAPTURA, IDEMB, IDTUBARAO, CODLOCAL, LATITUDE, LONGITUDE, DATA, 
TEMPAGUA) 
TUBARAO (IDTUBARAO, IDESPECIE, COMPRIMENTO, SEXO) 
Assinale a alternativa abaixo que representa uma consulta que exibe o nome científico e o sexo dos 
tubarões correlacionados corretamente. 
 
 SELECT NOME_CIENTIFICO, SEXO 
FROM ESPECIE E INNER JOIN 
TUBARAO T ON E.IDESPECIE = 
T.IDESPECIE; 
 
 
SELECT NOME_CIENTIFICO, SEXO 
FROM ESPECIE E, TUBARAO T; 
 
 
 SELECT NOME_CIENTIFICO, SEXO 
FROM ESPECIE E NATURAL JOIN 
TUBARAO T ON E.IDESPECIE = 
T.IDESPECIE; 
 
 
 SELECT NOME_CIENTIFICO, SEXO 
FROM ESPECIE E CROSS JOIN 
TUBARAO T ON E.IDESPECIE = 
T.IDESPECIE; 
 
 
SELECT NOME_CIENTIFICO, SEXO 
FROM ESPECIE JOIN TUBARAO; 
 
Respondido em 11/12/2020 19:28:28 
 
 
Explicação: 
A consulta deseja recuperar os seguintes campos: 
- nome científico: encontra-se na tabela Espécie 
- sexo: encontra-se na tabela Tubarão. 
Sendo assim temos que realizar uma junção interior. 
 
1 
 Questão 
 
Dentre os comandos abaixo, selecione o que possui uma subconsulta. 
 
 
SELECT P.NOME, D.NOME FROM PROFESSOR P, DISCIPLINA D WHERE P.ID_PROF = 
D.ID_PROF 
 
DROP TABLE PESSOA 
 
SELECT * FROM PROFESSOR P, DISCIPLINA D 
 SELECT * FROM NOME WHERE MEIO IN (SELECT DISTINCT MEIO FROM NOME) 
 
SELECT COUNT(*) FROM PRODUTO GROUP BY COR HAVING COR='VERDE' 
Respondido em 11/12/2020 19:28:54 
 
 
Explicação: 
Subconsultas são escritas entre parênteses. 
 
 
 
2 
 Questão 
 
Sobre as subconsultas em SQL, assinale a alternativa FALSA. 
 
 
Podem retornar uma ou várias linhas. 
 
Podem existir várias subconsultas para uma única consulta. 
 Podem retornar linhas nulas. 
 
Podem retornar uma ou várias colunas. 
 
São escritas entre parênteses. 
Respondido em 11/12/2020 19:29:04 
 
 
Explicação: 
As subconsultas obedecem aos seguintes princípios: 
 São escritas entre parênteses. 
 Podem existir várias subconsultas para uma única consulta. 
 Podem existir subconsultas dentro de subconsultas (subconsultas aninhadas). 
 Podem retornar uma ou várias colunas. 
 Podem retornar uma ou várias linhas. 
 Normalmente são utilizadas nas cláusulas WHERE ou HAVING, podendo, mais raramente, 
serem utilizadas nas cláusulas FROM ou SELECT. 
 Eventualmente podem referenciar colunas da consulta principal (subconsulta correlata). 
 Não devem retornar linhas nulas. 
 
 
 
3 
 Questão 
 
Qual operador retorna todas as linhas do primeiro conjuntoacrescidas de todas as linhas do 
segundo conjunto, eliminando as duplicadas? 
 
 Union 
 
Inner join 
 
Join 
 
Intersect 
 
Except 
Respondido em 11/12/2020 19:32:03 
 
 
Explicação: 
O operador UNION realiza a operação de UNIÃO, ou seja, retorna todas as linhas do primeiro 
conjunto acrescidas de todas as linhas do segundo conjunto, eliminando as duplicadas. 
 
 
 
4 
 Questão 
 
Baseado no modelo de banco de dados mostrado a seguir: 
FILIAL(idfilial(PK), nome, cidade,endereço,telefone) 
FUNCIONARIO(idfuncionario(PK),nome,endereço,telefone,salario,idfilial) 
CLIENTE(idcliente(PK),nome,cpf,endereço,telefone,cidade) 
CLIENTE_ESPECIAL(idcliente(PK),Km,desconto) 
CARRO(idcarro(PK),placa,modelo,tipo,cor,ano,Km,valor,chassis,idfilial) 
ALUGUEL(NF(PK),idcarro,idcliente,valor,CNH,dataIni,dataFim,idfuncionario) 
Qual o código do Carro que tem o maior valor de aluguel? 
 
 
 
SELECT idCarro FROM aluguel a where valor = Max(valor); 
 
 
SELECT idCarro, Max(valor) FROM aluguel a group by idcarro; 
 SELECT idCarro FROM aluguel a where valor = (select Max(valor) from aluguel); 
 
 
SELECT idCarro, Max(valor) FROM aluguel; 
 
 
SELECT idCarro FROM aluguel a where valor = (select sum(valor) from aluguel); 
 
Respondido em 11/12/2020 19:32:16 
 
 
Explicação: 
Para executarmos a consulta temos que primeiro obter o maior valor de aluguel em uma 
subconsulta e depois utilizar este valor para filtrar as linhas na consulta principal 
 
 
 
5 
 Questão 
 
Considere as seguintes tabelas: 
 CLIENTE (idCli, NomeCli) 
 PEDIDO (idPEDIDO, Data, idCli, ValorPedido) 
Qual alternativa apresenta os clientes que NÃO tiveram nenhum pedido? 
 
 
 
SELECT * FROM CLIENTE 
 
 
SELECT * FROM CLIENTE WHERE idCli IN (SELECT idCli FROM PEDIDO) 
 
 
SELECT NomeCli FROM CLIENTE C LEFT JOIN PEDIDO P ON C.idCli = P.idCli 
 
 
SELECT NomeCli FROM CLIENTE C RIGHT JOIN PEDIDO P ON C.idCli = P.idCli 
 
 SELECT * FROM CLIENTE WHERE idCli NOT IN (SELECT idCli FROM PEDIDO) 
 
Respondido em 11/12/2020 19:29:45 
 
 
Explicação: 
O comando utiliza uma subconsulta para obter o id dos clientes que fizeram pedidos e a seguir filtra 
os clientes que não aparecem no conjunto retornado 
 
 
 
6 
 Questão 
 
Em um projeto lógico de um sistema foi identificado que um projeto é de um certo tipo. Assim, as 
relações abaixo foram definidas: 
TIPO_PROJETO (ID_TIPO, NOME) 
PROJETO (ID_PROJETO, NOME, DESCRICAO, ID_TIPO, VALOR) Conforme a linguagem SQL e as 
relações dadas, escolha a opção que mostre o nome de cada tipo de projeto que não possua um 
projeto e que comece com a letra A. 
 
 
 
SELECT TP.NOME 
FROM TIPO_PROJETO TP, PROJETO P 
WHERE TP.ID_TIPO = P.ID_TIPO AND TP.ID_TIPO IS NULL AND TP.NOME LIKE '%A%'; 
 
SELECT TP.NOME 
FROM TIPO_PROJETO TP, PROJETO P 
WHERE ID_TIPO IS NULL AND P.VALOR=0 AND TP.NOME LIKE 'A%'; 
 
 SELECT NOME 
FROM TIPO_PROJETO 
WHERE ID_TIPO NOT IN (SELECT DISTINCT ID_TIPO FROM PROJETO) AND NOME LIKE 
'A%' ; 
 
SELECT TP.NOME 
FROM TIPO_PROJETO TP, PROJETO P 
WHERE TP.ID_TIPO = P.ID_TIPO AND P.VALOR IS NULL AND TP.NOME LIKE '%A%'; 
 
SELECT TP.NOME 
FROM TIPO_PROJETO TP, PROJETO P 
WHERE ID_TIPO IS NULL AND TP.NOME LIKE '%A%'; 
Respondido em 11/12/2020 19:29:56 
 
 
Explicação: 
A subconsulta retorna o ID do tipos de projeto que possuem projeto e a clausula where filtrar as 
linhas da consulta principal que estão no conjunto retornado e ainda os nomes que não começam 
por A

Continue navegando

Outros materiais