Logo Passei Direto
Buscar

Implement banco de dados - teste de conhecimento(6 A 10)

Ferramentas de estudo

Questões resolvidas

AULA 6
Para se obter todos as matrículas, nomes e descrições dos departamentos de todos empregados independente de terem ou não códigos de departamento atribuídos (entenda-se por nulo os departamentos não atribuídos) deve-se escrever qual o select:
SELECT E.ID_EMP_MATRICULA AS MATRICULA, E.VC_EMP_NOME AS NOME, D.VC_DEP_NOME AS DEPARTAMENTO FROM EMPREGADO E RIGHT JOIN DEPARTAMENTO D ON E.NU_EMP_DEPARTAMENTO = D.ID_DEP_CODIGO;
SELECT E.ID_EMP_MATRICULA AS MATRICULA, E.VC_EMP_NOME AS NOME, D.VC_DEP_NOME AS DEPARTAMENTO FROM EMPREGADO E INNER JOIN DEPARTAMENTO D ON E.NU_EMP_DEPARTAMENTO = D.ID_DEP_CODIGO WHERE E.NU_EMP_DEPARTAMENTO IS NULL;
SELECT E.ID_EMP_MATRICULA AS MATRICULA, E.VC_EMP_NOME AS NOME, D.VC_DEP_NOME AS DEPARTAMENTO FROM EMPREGADO E LEFT JOIN DEPARTAMENTO D ON E.NU_EMP_DEPARTAMENTO = D.ID_DEP_CODIGO;
SELECT E.ID_EMP_MATRICULA AS MATRICULA, E.VC_EMP_NOME AS NOME, D.VC_DEP_NOME AS DEPARTAMENTO FROM EMPREGADO E INNER JOIN DEPARTAMENTO D ON E.NU_EMP_DEPARTAMENTO != D.ID_DEP_CODIGO;
SELECT E.ID_EMP_MATRICULA AS MATRICULA, E.VC_EMP_NOME AS NOME, D.VC_DEP_NOME AS DEPARTAMENTO FROM EMPREGADO E INNER JOIN DEPARTAMENTO D ON E.NU_EMP_DEPARTAMENTO = D.ID_DEP_CODIGO;

AULA 6
Qual comando representa a especificação abaixo?
Especifica a junção entre duas tabelas com uma cláusula de junção explícita.
WHERE
INNER JOIN
GROUP BY
ORDER BY
SELECT

AULA 6
A operação SQL que recupera tuplas provenientes de duas tabelas é:
Projeção
Seleção
Junção
Subtração

AULA 6
Em uma junção Cruzada entre três tabelas com respectivamente 10, 8 e 4 registros, gerará uma saída com quantos registros?
320 registros
20 registros
160 registros
220 registros
22 registros

AULA 6
A junção irrestrita também é conhecida como:
Junção Cruzada
Junção Interior
Junção Contínua
Junção Exterior
Autojunção

AULA 6
São restrições para manipular (INSERT, DELETE ou UPDATE) os dados de uma tabela no banco dados através de uma visão, EXCETO:
Não possuir a cláusula DISTINCT na sua consulta.
As cláusulas GROUP BY ou HAVING não estarem presentes na sua consulta.
Não possuir colunas derivadas de funções de agregação.
A chave primaria estar contida na consulta que originou a visão.
Não possuir junções, ou seja, ter sido criada sobre uma única tabela.

AULA 6
Conforme a relação de empregado abaixo, através da álgebra relacional, escolha a opção que selecione o nome e endereço de cada empregado, que possua salário superior a R$ 5.000,00.
Empregado(matrícula, nome, endereço, salário, departamento, cargo).
π salario>5000 X (δ nome,endereco (Empregado))
π nome,endereco (δ salario>5000 (Empregado))
π salario>5000 (δ nome,endereco (Empregado))
π nome,endereço (Empregado) X (δ salario>5000 (Empregado))
δ nome,endereco (π salario>5000 (Empregado))

AULA 7
Qual dos operadores de conjunto a seguir, devemos tomar cuidado na hora de colocarmos a ordem das tabelas, pois retorna diferentes resultados ao se inverter a ordem das tabelas?
UNION ALL
INTERSECT
UNION
MINUS
MINUS ALL

AULA 7
Qual opção abaixo representa uma sequência de operadores de conjunto?
char, unique, varchar e numeric
foreign key, primary key, references e unique
varchar, primary key, references e check
union, union all, intersect e except
char, date, vardate e int

AULA 7
Sabendo que a estrutura da tabela é: ID_EMP_MATRICULA, VC_EMP_NOME, NU_EMP_CARGO, NU_EMP_SALARIO, NU_EMP_GRATIFICACAO, NU_EMP_DESCONTO. Pede-se que, exiba a(s) matrícula(s), o(s) nome(s), o(s) salário(s) líquido(s) do(s) maior(es) salário(s) pago(s) aos empregados pela empresa, apenas dos que sejam do cargo de código 99 e que o salário líquido seja maior que 3000. Para se resolver essa consulta deve-se obrigatoriamente usar além das argumentos SELECT e FROM, usar:
WHERE.
WHERE, GROUP BY e SUBQUERY.
WHERE e HAVING e SUBQUERY.
WHERE e SUBQUERY.
WHERE, GROUP BY e HAVING.

AULA 7
Uma consulta que ocorre dentro de outro comando SQL é denominada:
Consulta interna
Operação
Subconsulta
Não é possivel uma consulta deste tipo
Consulta externa

AULA 7
(FCC - 2009 - Análise de Sistemas - Suporte - ADAPTADA) Uma instrução Select usada na cláusula Where ou Having de outra instrução Select é
Uma visão.
Um crosstab.
Um join.
Um índice.
Uma subconsulta.

AULA 7
Qual dos tipos de sub-consulta que faz referência a uma coluna da tabela da consulta externa?
Sub-Consulta Principal
Sub-Consulta Correlata
Sub-Consulta Multi-Linhas
Sub-Consulta Simple
Sub-Consulta Multi-Valorada

AULA 7
Qual dos operadores de comparação de consultas Multi-Linhas a seguir NÃO é válido?
< ALL
= ANY
> ALL
=
<> ALL

AULA 7
NEXTVAL e CURRVAL, qual das opções abaixo NÃO pode ser usada?
Na cláusula WHERE de um comando DELETE
No SELECT da query principal de uma construção com subqueries
Numa cláusula SELECT em tabelas (exceção a Views)
Na cláusula SET de um comando UPDATE
Na cláusula VALUES de um comando INSERT

AULA 7
Para sabermos o valor atual em uma sequência, devemos usar:
Select NomeSequencia.NEXTVAL from NomeTabela
Select NomeSequencia.NEXTVAL from Dual
Select NomeSequencia.CURRVAL from Dual
Nenhuma das demais respostas
Select NomeSequencia.CURRVAL from NomeTabela

AULA 7
Para criarmos um índice para a tabela Fornecedor pelo Bairro e Cidade devemos dar o seguinte comando:
Create Index Forn_Bairro_Cidade From Fornecedor BY Bairro, Cidade
Create Index Forn_Bairro_Cidade ON Fornecedor(Bairro, Cidade)
Create Index Fornecedor ON Forn_Bairro_Cidade(Bairro, Cidade)
Create Index Fornecedor BY Bairro, Cidade
Create Index Forn_Bairro_Cidade ON Fornecedor BY Bairro, Cidade

AULA 7
1. ______________ são objetos que apresentam auto-incremento. 2. ______________ uma pseudocoluna utilizada para extrair valores de uma sequence qualquer, sempre que for referenciada. 3. ______________ uma pseudocoluna utilizada para informar o último valor gerado por uma sequence. É sempre incrementada após um ______________ 4. Nextval e currval ___________ ser usados na cláusula VALUES de um comando INSERT 5. Nextval e currval ___________ ser usados dentro de uma subconsulta. As palavras que preenchem as lacunas corretamente estão representadas em:
(1) sequences (2) nextval (3) currval e nextval (4) podem (5) podem
(1) sequences (2) nextval (3) currval e nextval (4) podem (5) não podem
(1) sequences (2) currval (3) nextval e nextval (4) não podem (5) não podem
(1) sequences (2) currval - (3) nextval e nextval (4) não podem (5) podem
(1) indices (2) nextval (3) currval e nextval (4) podem (5) não podem

AULA 7
O comando SQL para criar uma visão chamada Eye, abrangendo os atributos A1 e A2 da tabela Pen, é:
CREATE VIEW Eye AS SELECT A1, A2 FROM Pen
COMPOSE FLASH Eye AS A1, A2 FROM Pen
BUILD Eye AS INSERT A1, A2 FROM Pen
COMPILE Eye AS INSERT A1, A2 FROM Pen
CREATE DROP Eye FROM A1, A2 FROM Pen

AULA 7
O comando para apagar um visão é:
DELETE VIEW
DEL VIEW
NEW VIEW
DROP VIEW
CANCEL VIEW

Material
páginas com resultados encontrados.
páginas com resultados encontrados.
left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Questões resolvidas

AULA 6
Para se obter todos as matrículas, nomes e descrições dos departamentos de todos empregados independente de terem ou não códigos de departamento atribuídos (entenda-se por nulo os departamentos não atribuídos) deve-se escrever qual o select:
SELECT E.ID_EMP_MATRICULA AS MATRICULA, E.VC_EMP_NOME AS NOME, D.VC_DEP_NOME AS DEPARTAMENTO FROM EMPREGADO E RIGHT JOIN DEPARTAMENTO D ON E.NU_EMP_DEPARTAMENTO = D.ID_DEP_CODIGO;
SELECT E.ID_EMP_MATRICULA AS MATRICULA, E.VC_EMP_NOME AS NOME, D.VC_DEP_NOME AS DEPARTAMENTO FROM EMPREGADO E INNER JOIN DEPARTAMENTO D ON E.NU_EMP_DEPARTAMENTO = D.ID_DEP_CODIGO WHERE E.NU_EMP_DEPARTAMENTO IS NULL;
SELECT E.ID_EMP_MATRICULA AS MATRICULA, E.VC_EMP_NOME AS NOME, D.VC_DEP_NOME AS DEPARTAMENTO FROM EMPREGADO E LEFT JOIN DEPARTAMENTO D ON E.NU_EMP_DEPARTAMENTO = D.ID_DEP_CODIGO;
SELECT E.ID_EMP_MATRICULA AS MATRICULA, E.VC_EMP_NOME AS NOME, D.VC_DEP_NOME AS DEPARTAMENTO FROM EMPREGADO E INNER JOIN DEPARTAMENTO D ON E.NU_EMP_DEPARTAMENTO != D.ID_DEP_CODIGO;
SELECT E.ID_EMP_MATRICULA AS MATRICULA, E.VC_EMP_NOME AS NOME, D.VC_DEP_NOME AS DEPARTAMENTO FROM EMPREGADO E INNER JOIN DEPARTAMENTO D ON E.NU_EMP_DEPARTAMENTO = D.ID_DEP_CODIGO;

AULA 6
Qual comando representa a especificação abaixo?
Especifica a junção entre duas tabelas com uma cláusula de junção explícita.
WHERE
INNER JOIN
GROUP BY
ORDER BY
SELECT

AULA 6
A operação SQL que recupera tuplas provenientes de duas tabelas é:
Projeção
Seleção
Junção
Subtração

AULA 6
Em uma junção Cruzada entre três tabelas com respectivamente 10, 8 e 4 registros, gerará uma saída com quantos registros?
320 registros
20 registros
160 registros
220 registros
22 registros

AULA 6
A junção irrestrita também é conhecida como:
Junção Cruzada
Junção Interior
Junção Contínua
Junção Exterior
Autojunção

AULA 6
São restrições para manipular (INSERT, DELETE ou UPDATE) os dados de uma tabela no banco dados através de uma visão, EXCETO:
Não possuir a cláusula DISTINCT na sua consulta.
As cláusulas GROUP BY ou HAVING não estarem presentes na sua consulta.
Não possuir colunas derivadas de funções de agregação.
A chave primaria estar contida na consulta que originou a visão.
Não possuir junções, ou seja, ter sido criada sobre uma única tabela.

AULA 6
Conforme a relação de empregado abaixo, através da álgebra relacional, escolha a opção que selecione o nome e endereço de cada empregado, que possua salário superior a R$ 5.000,00.
Empregado(matrícula, nome, endereço, salário, departamento, cargo).
π salario>5000 X (δ nome,endereco (Empregado))
π nome,endereco (δ salario>5000 (Empregado))
π salario>5000 (δ nome,endereco (Empregado))
π nome,endereço (Empregado) X (δ salario>5000 (Empregado))
δ nome,endereco (π salario>5000 (Empregado))

AULA 7
Qual dos operadores de conjunto a seguir, devemos tomar cuidado na hora de colocarmos a ordem das tabelas, pois retorna diferentes resultados ao se inverter a ordem das tabelas?
UNION ALL
INTERSECT
UNION
MINUS
MINUS ALL

AULA 7
Qual opção abaixo representa uma sequência de operadores de conjunto?
char, unique, varchar e numeric
foreign key, primary key, references e unique
varchar, primary key, references e check
union, union all, intersect e except
char, date, vardate e int

AULA 7
Sabendo que a estrutura da tabela é: ID_EMP_MATRICULA, VC_EMP_NOME, NU_EMP_CARGO, NU_EMP_SALARIO, NU_EMP_GRATIFICACAO, NU_EMP_DESCONTO. Pede-se que, exiba a(s) matrícula(s), o(s) nome(s), o(s) salário(s) líquido(s) do(s) maior(es) salário(s) pago(s) aos empregados pela empresa, apenas dos que sejam do cargo de código 99 e que o salário líquido seja maior que 3000. Para se resolver essa consulta deve-se obrigatoriamente usar além das argumentos SELECT e FROM, usar:
WHERE.
WHERE, GROUP BY e SUBQUERY.
WHERE e HAVING e SUBQUERY.
WHERE e SUBQUERY.
WHERE, GROUP BY e HAVING.

AULA 7
Uma consulta que ocorre dentro de outro comando SQL é denominada:
Consulta interna
Operação
Subconsulta
Não é possivel uma consulta deste tipo
Consulta externa

AULA 7
(FCC - 2009 - Análise de Sistemas - Suporte - ADAPTADA) Uma instrução Select usada na cláusula Where ou Having de outra instrução Select é
Uma visão.
Um crosstab.
Um join.
Um índice.
Uma subconsulta.

AULA 7
Qual dos tipos de sub-consulta que faz referência a uma coluna da tabela da consulta externa?
Sub-Consulta Principal
Sub-Consulta Correlata
Sub-Consulta Multi-Linhas
Sub-Consulta Simple
Sub-Consulta Multi-Valorada

AULA 7
Qual dos operadores de comparação de consultas Multi-Linhas a seguir NÃO é válido?
< ALL
= ANY
> ALL
=
<> ALL

AULA 7
NEXTVAL e CURRVAL, qual das opções abaixo NÃO pode ser usada?
Na cláusula WHERE de um comando DELETE
No SELECT da query principal de uma construção com subqueries
Numa cláusula SELECT em tabelas (exceção a Views)
Na cláusula SET de um comando UPDATE
Na cláusula VALUES de um comando INSERT

AULA 7
Para sabermos o valor atual em uma sequência, devemos usar:
Select NomeSequencia.NEXTVAL from NomeTabela
Select NomeSequencia.NEXTVAL from Dual
Select NomeSequencia.CURRVAL from Dual
Nenhuma das demais respostas
Select NomeSequencia.CURRVAL from NomeTabela

AULA 7
Para criarmos um índice para a tabela Fornecedor pelo Bairro e Cidade devemos dar o seguinte comando:
Create Index Forn_Bairro_Cidade From Fornecedor BY Bairro, Cidade
Create Index Forn_Bairro_Cidade ON Fornecedor(Bairro, Cidade)
Create Index Fornecedor ON Forn_Bairro_Cidade(Bairro, Cidade)
Create Index Fornecedor BY Bairro, Cidade
Create Index Forn_Bairro_Cidade ON Fornecedor BY Bairro, Cidade

AULA 7
1. ______________ são objetos que apresentam auto-incremento. 2. ______________ uma pseudocoluna utilizada para extrair valores de uma sequence qualquer, sempre que for referenciada. 3. ______________ uma pseudocoluna utilizada para informar o último valor gerado por uma sequence. É sempre incrementada após um ______________ 4. Nextval e currval ___________ ser usados na cláusula VALUES de um comando INSERT 5. Nextval e currval ___________ ser usados dentro de uma subconsulta. As palavras que preenchem as lacunas corretamente estão representadas em:
(1) sequences (2) nextval (3) currval e nextval (4) podem (5) podem
(1) sequences (2) nextval (3) currval e nextval (4) podem (5) não podem
(1) sequences (2) currval (3) nextval e nextval (4) não podem (5) não podem
(1) sequences (2) currval - (3) nextval e nextval (4) não podem (5) podem
(1) indices (2) nextval (3) currval e nextval (4) podem (5) não podem

AULA 7
O comando SQL para criar uma visão chamada Eye, abrangendo os atributos A1 e A2 da tabela Pen, é:
CREATE VIEW Eye AS SELECT A1, A2 FROM Pen
COMPOSE FLASH Eye AS A1, A2 FROM Pen
BUILD Eye AS INSERT A1, A2 FROM Pen
COMPILE Eye AS INSERT A1, A2 FROM Pen
CREATE DROP Eye FROM A1, A2 FROM Pen

AULA 7
O comando para apagar um visão é:
DELETE VIEW
DEL VIEW
NEW VIEW
DROP VIEW
CANCEL VIEW

Prévia do material em texto

IMPLEMENTAÇÃO DE BANCO DE DADOS 
TESTE DE CONHECIMENTO 
AULAS 6 A 10 
 
AULA 6 
1a Questão 
 
Para se obter todos as matrículas, nomes e descrições dos departamentos de todos empregados independente de terem 
ou não códigos de departamento atribuídos (entenda-se por nulo os departamentos não atribuídos) deve-se escrever qual 
o select: 
 
 
SELECT E.ID_EMP_MATRICULA AS MATRICULA, E.VC_EMP_NOME AS NOME, D.VC_DEP_NOME AS 
DEPARTAMENTO FROM EMPREGADO E RIGHT JOIN DEPARTAMENTO D ON E.NU_EMP_DEPARTAMENTO = 
D.ID_DEP_CODIGO; 
 
SELECT E.ID_EMP_MATRICULA AS MATRICULA, E.VC_EMP_NOME AS NOME, D.VC_DEP_NOME AS 
DEPARTAMENTO FROM EMPREGADO E INNER JOIN DEPARTAMENTO D ON E.NU_EMP_DEPARTAMENTO = 
D.ID_DEP_CODIGO WHERE E.NU_EMP_DEPARTAMENTO IS NULL; 
 SELECT E.ID_EMP_MATRICULA AS MATRICULA, E.VC_EMP_NOME AS NOME, D.VC_DEP_NOME AS 
DEPARTAMENTO FROM EMPREGADO E LEFT JOIN DEPARTAMENTO D ON E.NU_EMP_DEPARTAMENTO = 
D.ID_DEP_CODIGO; 
 
SELECT E.ID_EMP_MATRICULA AS MATRICULA, E.VC_EMP_NOME AS NOME, D.VC_DEP_NOME AS 
DEPARTAMENTO FROM EMPREGADO E INNER JOIN DEPARTAMENTO D ON E.NU_EMP_DEPARTAMENTO != 
D.ID_DEP_CODIGO; 
 
SELECT E.ID_EMP_MATRICULA AS MATRICULA, E.VC_EMP_NOME AS NOME, D.VC_DEP_NOME AS 
DEPARTAMENTO FROM EMPREGADO E INNER JOIN DEPARTAMENTO D ON E.NU_EMP_DEPARTAMENTO = 
D.ID_DEP_CODIGO; 
Respondido em 16/05/2019 14:39:56 
 
 
Gabarito 
Coment. 
 
 
 
 
 2a Questão 
 
 
Qual comando representa a especificação abaixo? 
 
Especifica a junção entre duas tabelas com uma cláusula de junção explícita. 
 
 
WHERE 
 INNER JOIN 
 
GROUP BY 
 
ORDER BY 
 
SELECT 
Respondido em 16/05/2019 14:40:14 
 
 
Gabarito 
Coment. 
 
 
 
 
 3a Questão 
 
 
A operação SQL que recupera tuplas provenientes de duas tabelas é: 
 
 
Projeção 
 
Relação 
 
Seleção 
 Junção 
 
Subtração 
Respondido em 16/05/2019 14:40:33 
 
 
Gabarito 
Coment. 
 
 
 
 
 4a Questão 
 
 
Em uma junção Cruzada entre três tabelas com respectivamente 10, 8 e 4 resgistros, gerará uma saída com quantos 
registros? 
 
 320 registros 
 
20 registros 
 
160 registros 
 
220 registros 
 
22 registros 
Respondido em 16/05/2019 14:41:11 
 
 
 
 
 5a Questão 
 
 
A junção irrestrita também é conhecida como: 
 
 Junção Cruzada 
 
Junção Interior 
 
Junção Contínua 
 
Junção Exterior 
 
Autojunção 
Respondido em 16/05/2019 14:41:24 
 
 
 
 
 6a Questão 
 
 
São restrições para manipular (INSERT, DELETE ou UPDATE) os dados de uma tabela no banco dados através de uma 
visão, EXCETO: 
 
 
Não possuir a cláusula DISTINCT na sua consulta. 
 
As cláusulas GROUP BY ou HAVING não estarem presentes na sua consulta. 
 
Não possuir colunas derivadas de funções de agregação. 
 A chave primaria estar contida na consulta que originou a visão. 
 
Não possuir junções, ou seja, ter sido criada sobre uma única tabela. 
Respondido em 16/05/2019 14:42:31 
 
 
Explicação: A chave primária deve estar contida na consulta que gerou a visão para que possa receber valor em caso de 
INSERT. 
 
 
 
 
 7a Questão 
 
 
Conforme a relação de empregado abaixo, através da álgebra relacional, escolha a opção que selecione o nome e 
endereço de cada empregado, que possua salário superior a R$ 5.000,00. 
 
Empregado(matrícula, nome, endereço, salário, departamento, cargo). 
 
 π salario>5000 X (δ nome,endereco (Empregado)) 
 
π nome,endereco (δ salario>5000 (Empregado)) 
 π salario>5000 (δ nome,endereco (Empregado)) 
 π nome,endereço (Empregado) X (δ salario>5000 (Empregado)) 
 δ nome,endereco (π salario>5000 (Empregado)) 
Respondido em 16/05/2019 14:42:43 
 
 
Gabarito 
Coment. 
 
 
 
 
 8a Questão 
 
 
Uma operação de junção pode ser considerada uma sequência de duas operações. São elas: 
 
 
INTERSEÇÃO E UNIÃO 
 PRODUTO CARTESIANO E SELEÇÃO 
 
SELEÇÃO E PROJEÇÃO 
 
PROJEÇÃO E UNIÃO 
 
PRODUTO CARTESIANO E PROJEÇÃO 
 
AULA 7 
1a Questão 
 
Qual dos operadores de conjunto a seguir, devemos tomar cuidado na hora de colocarmos a ordem das tabelas, pois 
retorna diferentes resultados ao se inverter a ordem das tabelas? 
 
 
UNION ALL 
 
INTERSECT 
 
UNION 
 MINUS 
 
MINUS ALL 
Respondido em 16/05/2019 14:43:53 
 
 
Gabarito 
Coment. 
 
 
 
 
 2a Questão 
 
 
Qual opção abaixo representa uma sequência de operadores de conjunto? 
 
 char, unique, varchar e numeric 
 foreign key, primary key, references e unique 
 varchar, primary key, references e check 
 union, union all, intersect e except 
 char, date, vardate e int 
Respondido em 16/05/2019 14:44:07 
 
 
Gabarito 
Coment. 
 
 
 
 
 3a Questão 
 
 
Sabendo que a estrutura da tabela é: 
 
ID_EMP_MATRICULA, VC_EMP_NOME, NU_EMP_CARGO, NU_EMP_SALARIO, NU_EMP_GRATIFICACAO, 
NU_EMP_DESCONTO. 
 
Pede-se que, exiba a(s) matrícula(s), o(s) nome(s), o(s) salário(s) líquido(s) do(s) maior(es) salário(s) pago(s) aos 
empregados pela empresa, apenas dos que sejam do cargo de código 99 e que o salário líquido seja maior que 3000. 
Para se resolver essa consulta deve-se obrigatoriamente usar além das argumentos SELECT e FROM, usar: 
 
 
WHERE. 
 
WHERE, GROUP BY e SUBQUERY. 
 
WHERE e HAVING e SUBQUERY. 
 WHERE e SUBQUERY. 
 
WHERE, GROUP BY e HAVING. 
Respondido em 16/05/2019 14:44:41 
 
 
Gabarito 
Coment. 
 
 
 
 
 4a Questão 
 
 
Uma consulta que ocorre dentro de outro comando SQL é denominada: 
 
 
Consulta interna 
 
Operação 
 Subconsulta 
 
Não é possivel uma consulta deste tipo 
 
Consulta externa 
Respondido em 16/05/2019 14:46:04 
 
 
 
 
 5a Questão 
 
 
(FCC - 2009 - Análise de Sistemas - Suporte - ADAPTADA) 
Uma instrução Select usada na cláusula Where ou Having de outra instrução Select é 
 
 
Uma visão. 
 
Um crosstab. 
 
Um join. 
 Um índice. 
 Uma subconsulta. 
Respondido em 16/05/2019 14:46:44 
 
 
 
 
 6a Questão 
 
 
Qual dos tipos de sub-consulta que faz referência a uma coluna da tabela da consulta externa? 
 
 
Sub-Consulta Principal 
 Sub-Consulta Correlata 
 
Sub-Consulta Multi-Linhas 
 
Sub-Consulta Simple 
 
Sub-Consulta Multi-Valorada 
Respondido em 16/05/2019 14:47:10 
 
 
 
 
 7a Questão 
 
 
Qual dos operadores de comparação de consultas Multi-Linhas a seguir NÃO é válido? 
 
 
< ALL 
 
= ANY 
 
> ALL 
 = 
 
<> ALL 
Respondido em 16/05/2019 14:47:46 
 
 
 
 
 8a Questão 
 
 
(FGV - 2010 - DETRAN-RN - Assessor Técnico - Administração de Banco de Dados) 
Assinale a alternativa correta sobre fragmento de comando a seguir: 
(select distinct nome_cliente 
from contas) 
intersect 
(select distinct nome_cliente 
from emprestimos) 
 
 
 Se um cliente tem diversas contas e empréstimos no banco, aparecerá somente uma vez no resultado. 
 Se um cliente não possui conta mas possui empréstimos no banco, aparecerá no resultado. 
 Se um cliente tem diversas contas e empréstimos no banco, não aparecerá no resultado. 
 Se um cliente tem diversas contas e empréstimos no banco, aparecerá todas as repetições no resultado. 
 Se um cliente possui conta mas não possui empréstimos no banco, aparecerá no resultado. 
 
AULA 8 
1a Questão 
 
Analise as afirmações abaixo: 
 
I. Quando fazemos uma consulta em umaView podemos usar todos as clausulas do comando Select, tais como : 
Where, Group By, Having e Order By. 
 
II. Quando fazemos uma consulta em uma View podemos utilizar os operadores relacionais ( in, between, like, is 
null), os operadores lógicos ( and, or not) e as funções de grupo. 
 
III. Quando fazemos uma consulta em uma View podemos fazer junções com uma tabela 
 
IV. Quando fazemos uma consulta em uma View podemos fazer subconsultas e utilizar operadores de conjunto; 
 
São VERDADEIRAS: 
 
 
 
 I e II. 
 
I, III e IV. 
 I, II, III e IV. 
 
I, II e III. 
 
I, II, e IV. 
Respondido em 16/05/2019 14:50:11 
 
 
 
 
 2a Questão 
 
 
Dentre as regras de utilização de NEXTVAL e CURRVAL, qual das opções abaixo NÃO pode ser usada? 
 
 Na cláusula WHERE de um comando DELETE 
 
No SELECT da query principal de uma construção com subqueries 
 
Numa cláusula SELECT em tabelas (exceção a Views) 
 
Na cláusula SET de um comando UPDATE 
 
Na cláusula VALUES de um comando INSERT 
Respondido em 16/05/2019 14:50:28 
 
 
Gabarito 
Coment. 
 
 
 
 
 3a Questão 
 
 
Para sabermos o valor atual em uma sequência, devemos usar: 
 
 
Select NomeSequencia.NEXTVAL from NomeTabela 
 
Select NomeSequencia.NEXTVAL from Dual 
 Select NomeSequencia.CURRVAL from Dual 
 
Nenhuma das demais respostas 
 
Select NomeSequencia.CURRVAL from NomeTabela 
Respondido em 16/05/2019 14:50:37 
 
 
Gabarito 
Coment. 
 
 
 
 
 4a Questão 
 
 
Para criarmos um índice para a tabela Fornecedor pelo Bairro e Cidade devemos dar o seguinte comando: 
 
 
Create Index Forn_Bairro_Cidade From Fornecedor BY Bairro, Cidade 
 Create Index Forn_Bairro_Cidade ON Fornecedor(Bairro, Cidade) 
 
Create Index Fornecedor ON Forn_Bairro_Cidade(Bairro, Cidade) 
 
Create Index Fornecedor BY Bairro, Cidade 
 
Create Index Forn_Bairro_Cidade ON Fornecedor BY Bairro, Cidade 
Respondido em 16/05/2019 14:50:45 
 
 
Gabarito 
Coment. 
 
 
 
 
 5a Questão 
 
 
São tipos de visões: 
 
 
Simples 
 
Abstratas 
 Simples e Complexas 
 
Complexas 
 
Simples e Abstratas 
Respondido em 16/05/2019 14:50:56 
 
 
Gabarito 
Coment. 
 
 
 
 
 6a Questão 
 
 
1. ______________ são objetos que apresentam auto-incremento. 
2. ______________ uma pseudocoluna utilizada para extrair valores de uma sequence qualquer, sempre que for 
referenciada. 
3. ______________ uma pseudocoluna utilizada para informar o último valor gerado por uma sequence. É sempre 
incrementada após um ______________ 
4. Nextval e currval ___________ ser usados na cláusula VALUES de um comando INSERT 
5. Nextval e currval ___________ ser usados dentro de uma subconsulta. 
 
As palavras que preenchem as lacunas corretamente estão representadas em: 
 
 (1) sequences (2) nextval (3) currval e nextval (4) podem (5) podem 
 (1) sequences (2) nextval (3) currval e nextval (4) podem (5) não podem 
 (1) sequences (2) currval (3) nextval e nextval (4) não podem (5) não podem 
 (1) sequences (2) currval - (3) nextval e nextval (4) não podem (5) podem 
 (1) indices (2) nextval (3) currval e nextval (4) podem (5) não podem 
Respondido em 16/05/2019 14:51:02 
 
 
Gabarito 
Coment. 
 
 
 
 
 7a Questão 
 
 
O comando SQL para criar uma visão chamada Eye, abrangendo os atributos A1 e A2 da tabela Pen, é: 
 
 CREATE VIEW Eye AS SELECT A1, A2 FROM Pen 
 
COMPOSE FLASH Eye AS A1, A2 FROM Pen 
 
BUILD Eye AS INSERT A1, A2 FROM Pen 
 
COMPILE Eye AS INSERT A1, A2 FROM Pen 
 
CREATE DROP Eye FROM A1, A2 FROM Pen 
Respondido em 16/05/2019 14:51:08 
 
 
Gabarito 
Coment. 
 
 
 
 
 8a Questão 
 
 
O comando para apagar um visão é: 
 
 
DELETE VIEW 
 
DEL VIEW 
 
NEW VIEW 
 DROP VIEW 
 
CANCEL VIEW 
 
AULA 9 
1a Questão 
 
Para iniciar uma transação no Oracle, basta usarmos um comando SQL executável e para encerrar, podemos usar 
qualquer dos comandos abaixo, com Exceção de: 
 
 
GRANT 
 
COMMIT 
 
CREATE 
 SELECT 
 
ROLLBACK 
Respondido em 16/05/2019 14:51:39 
 
 
Gabarito 
Coment. 
 
 
 
 
 2a Questão 
 
 
A propriedade que garante que todas as operações de uma transação são refletidas corretamente no banco de dados ou 
nenhuma será é: 
 
 
Isolamento 
 
Indisivibilidade 
 Atomicidade 
 
Durabilidade 
 
Consistência 
Respondido em 16/05/2019 14:52:23 
 
 
 
 
 3a Questão 
 
 
O comando SQL que garante a atomicidade de uma transação é: 
 
 
ROOLBACK 
 
GRANT 
 COMMIT 
 
REVOKE 
 
USER 
Respondido em 16/05/2019 14:52:37 
 
 
Gabarito 
Coment. 
 
 
 
 
 4a Questão 
 
 
A propriedade que garante que depois de a transação completar-se com sucesso, as mudanças que ela faz no banco de 
dados permanecem, até mesmo se houver falha no sistema é: 
 
 
Consistência 
 
Persistência 
 
Coerência 
 
Atomicidade 
 Durabilidade 
Respondido em 16/05/2019 14:52:51 
 
 
Gabarito 
Coment. 
 
 
 
 
 5a Questão 
 
 
Dentre as propriedades de uma transação, qual delas é responsável por preservar a integridade do banco de dados? 
 
 Consistência 
 
Durabilidade 
 
Isolamento 
 
Atomicidade 
 
Isonomia 
Respondido em 16/05/2019 14:53:00 
 
 
 
 
 6a Questão 
 
 
Uma unidade de execução de programa delimitada pelos comandos BEGIN TRANSACTION e END TRANSACTION é 
denominada uma: 
 
 
Proograma 
 Transação 
 
Operação 
 
Comando 
 
Seleção 
Respondido em 16/05/2019 14:53:19 
 
 
 
 
 7a Questão 
 
 
A propriedade que garante a proteção de uma transação dos efeitos de atualizações executadas por outras transações 
simultâneas é: 
 
 
Consistência 
 Isolamento 
 
Atomicidade 
 
Persistência 
 
Durabilidade 
Respondido em 16/05/2019 14:53:31 
 
 
Gabarito 
Coment. 
 
 
 
 
 8a Questão 
 
 
(CESGRANRIO - 2006 - EPE - Área Tecnologia da Informação) 
Para as técnicas de controle de concorrência em Bancos de Dados, assinale a afirmativa INCORRETA. 
 
 
O deadlock ocorre quando cada transação em um conjunto de duas ou mais transações espera por algum item 
que esteja bloqueado por alguma outra transação T no conjunto. 
 
Uma forma para detectar um estado de deadlock consiste em construir um grafo wait-for. 
 
As técnicas de controle de concorrência baseadas em ordenação por timestamp não usam bloqueios, portanto, 
deadlocks nunca podem ocorrer. 
 Diz-se que uma transação segue o protocolo de bloqueio de duas fases se todas as operações (read_lock, 
write_lock) precedem a última operação de desbloqueio na transação 
 
O problema de espera indefinida (starvation) pode ocorrer se o esquema de espera para itens bloqueados for 
parcial, dando prioridade a algumas transações sobre as outras. 
 
AULA 10 
1a Questão 
 
As abordagens clássicas utilizadas pelo otimizador de consultas são: 
 
 
Custo e tempo 
 
Regras 
 
Custo 
 Regras e custo 
 
Regras e tempo 
Respondido em 16/05/2019 14:54:11 
 
 
Gabarito 
Coment. 
 
 
 
 
 2a Questão 
 
 
Quantos acessos a disco são necessários para encontrar uma linha de uma tabela utilizando um índice hash, admitindo 
que não há a ocorrência de overflow debuckets? 
 
 
log2n 
 
PR 
 
2n 
 
1 
 2 
Respondido em 16/05/2019 14:54:19 
 
 
 
 
 3a Questão 
 
 
Os SGBD´s possuem abordagens para otimizar as consultas em um banco de dados. Quando o SGBD não possui no 
dicionário de dados estatísticas sobre o objeto referenciado, o otimizador aplica regras baseadas na sintaxe dos comandos 
e define o melhor caminho com o menor número de ranking da análise dos possíveis caminhos. 
 
Marque a alternativa que indica a abordagem denominada para este procedimento. 
 
 
Baseada em semântica. 
 
Baseada em custo. 
 Baseada em regras. 
 
Baseada em processamento. 
 
Baseada em roteamento. 
Respondido em 16/05/2019 14:54:30 
 
 
Gabarito 
Coment. 
 
 
 
 
 4a Questão 
 
 
 (CESGRANRIO - 2010 - IBGE - Analista de Sistemas - Desenvolvimento de Aplicações) 
Algumas regras de heurísticas vinculadas à álgebra relacional, como "execute as operações de seleção o mais cedo 
possível", "execute antes as projeções" e "evite os produtos cartesianos", são usualmente empregadas em sistemas 
gerenciadores de bancos de dados para a implementação de 
 
 
chaves primárias e estrangeiras. 
 
recuperação de dados após falhas. 
 
controle de concorrência. 
 índices do tipo bit map. 
 otimização de consultas. 
Respondido em 16/05/2019 14:55:03 
 
 
 
 
 5a Questão 
 
 
Os SGBD ́s possuem abordagens para otimizar as consultas em um banco de Se o dicionário de dados mantém 
estatísticas sobre o objeto referenciado, o otimizador utilizará estas estatísticas para fazer a seleção dos caminhos. 
 
Marque a alternativa que indica a abordagem denominada para este procedimento. 
 
 
Baseada em semântica. 
 
Baseada em regras. 
 
Baseada em roteamento. 
 Baseada em custo. 
 
Baseada em processamento. 
Respondido em 16/05/2019 14:55:15 
 
 
 
 
 6a Questão 
 
 
O otimizador do Oracle transforma condições envolvendo certos operadores, no caso do operador BETWEEN, ao usarmos 
como o exemplo a construção: Salario BETWEEN 1000 AND 3000 A sua otimização resultante será: 
 
 
salário > 1000 OR salário < 3000 
 salário >= 1000 AND salário <= 3000 
 
salário >= 1000 OR salário <= 3000 
 
salário < 1000 OR salário > 3000 
 
salário > 1000 AND salário < 3000 
Respondido em 16/05/2019 14:55:22 
 
 
Gabarito 
Coment. 
 
 
 
 
 7a Questão 
 
 
O SGBD realiza a execução de comandos em 5 etapas. 
 
Marque a alternativa que nomeia a etapa onde o SGBD verifica a existência de tabelas, visões e colunas, bem como 
realiza verificações de tipos dos atributos e dados utilizados na consulta. 
 
 
Reescrita de consulta 
 
Geração de Código 
 
Analise sintática 
 
Otimização de consulta 
 Analise semântica 
Respondido em 16/05/2019 14:55:48 
 
 
Gabarito 
Coment. 
 
 
 
 
 8a Questão 
 
 
Sobre algoritmos para o processamento de junções, assinale a alternativa verdadeira. 
 
 
O algoritmo Hash Join, altamente recomendável quando as tabelas envolvidas são pequenas, não possui qualquer 
relação com os índices hash, nem trabalha com a noção de buckets. 
 O algoritmo Nested-Loop Join pode produzir o menor custo de execução possível, desde que uma das duas 
tabelas possa ser armazenada por inteiro na memória. 
 
O algoritmo Sort Merge Join, baseado no clássico algoritmo Merge Sort, somente pode ser aplicado se as duas 
tabelas estiverem ordenadas por seus atributos de junção. 
 
Índices primários e secundários podem ser utilizados pelo algoritmo Nested-Loop Join com Índices, mas não o 
índice hash, pois não é ordenado. 
 
A variação Block Nested-Loop Join do algoritmo Nested-Loop Join não deve ser utilizada na prática, pois sempre 
leva a uma maior leitura de páginas do disco.

Mais conteúdos dessa disciplina