Baixe o app para aproveitar ainda mais
Prévia do material em texto
Aula 1 1a Questão A operação da álgebra relacional que recupera linhas em uma tabela é denominada: Diferença Projeção Produto cartesiano Junção Seleção 2a Questão Considere a relação: EMPREGADO (matricula, nome, endereco, bairro, salario, sexo, num_depto) A consulta em álgebra relacional que responde a questão ¿ Quais são os empregados que moram na Barra e ganham mais de R$ 3000,00? ¿ está corretamente representada em: π bairro = "Barra" AND salario > 3000 (empregado) σ empregado (Bairro= "Barra" AND salario > 3000) σ bairro ="Barra" AND salario > 3000 (empregado) σ bairro = "Barra" OR salario > 3000 (empregado) π bairro = "Barra" (empregado) 3a Questão Admitindo as relações abaixo especificadas, marque a alternativa que representa a consulta em álgebra relacional que responde corretamente a seguinte pergunta: quais os nomes dos alunos e seus respectivos cursos? Alunos(matricula, nome, endereco, cpf, cod_curso) Cursos(codigo, nome_curso) ᴨnome, nome_curso(σmatricula=codigo (Alunos X Cursos)) ᴨnome, nome_curso(σcod_curso=codigo (Alunos X Cursos)) σnome, nome_curso(ᴨcod_curso=codigo (Alunos X Cursos)) ᴨnome, nome_curso(σcod_curso=codigo (Alunos)) ᴨnome, nome_curso(Alunos X Cursos) 4a Questão Sobre Álgebra Relacional é possível afirmar que: A união só poderá ocorrer quando houver, nas duas consultas, o mesmo número de linhas é o operador da Junção, usado quando se deseja identificar a chave primária e a chave estrangeira das consultas O Produto Cartesiano é a concatenação de cada linha da primeira consulta com todas as linhas da segunda consulta é o operador de Projeção, usado quando se quer restringir o número de linhas é o operador de Seleção, usado quando se quer restringir o número de colunas 5a Questão Todas as possíveis combinações dos nomes dos tipos de imóvel e tamanhos de imóvel, todos os tamanhos de imóvel que não possuem um tipo de imóvel definido e mais todos os nomes de tipos de imóvel não referenciados em imóvel. Todas as possíveis combinações dos nomes dos tipos de imóvel e tamanhos de imóvel, correlacionadas entre si e nenhum outro dado além destes. Todas as possíveis combinações dos nomes dos tipos de imóvel e tamanhos de imóvel e mais todos os tamanhos de imóvel que não possuem um tipo de imóvel definido. Todas as possíveis combinações dos nomes dos tipos de imóvel e tamanhos de imóvel de forma irrestrita, sem preocupação com possíveis correlações existentes entre estes dados. Todas as possíveis combinações dos nomes dos tipos de imóvel e tamanhos de imóvel e mais todos os nomes de tipos de imóvel não referenciados em imóvel. 6a Questã o Álgebra Relacional é o conjunto de operações sobre modelos relacionais de dados. Referente as operações de álgebra relacional, relacione cada uma com os objetivos apresentados a seguir. 1. Seleção 2. Projeção 3. Produto Cartesiano 4. Junção ( ) É utilizada para selecionar um subconjunto de tuplas de uma relação. ( ) Seleciona um conjunto determinado de colunas de uma relação. ( ) É uma operação binária que combina todas as tuplas de duas relações. ( ) O resultado conterá apenas as tuplas que se relacionam de acordo com uma determinada condição. A relação correta entre as camadas e as características, de cima para baixo, é: 1, 3, 4, 2 2, 1, 3, 4 1, 2, 4, 3 2, 1, 4, 3 1, 2, 3, 4 7a Questão 8a Questão Considere a seguinte tabela criada: Aluno {matricula, nome, email} Marque a alternativa que representa em Álgebra Relacional, a PROJEÇÃO apenas do nome do aluno cuja matrícula é 0364. 1a 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)) π nome,endereço (Empregado) X (δ salario>5000 (Empregado)) δ nome,endereco (π salario>5000 (Empregado)) π salario>5000 (δ nome,endereco (Empregado)) 2a Questão Todas as possíveis combinações dos nomes dos tipos de imóvel e tamanhos de imóvel de forma irrestrita, sem preocupação com possíveis correlações existes entre estes dados. Todas as possíveis combinações dos nomes dos tipos de imóvel e tamanhos de imóvel, correlacionadas entre si e nenhum outro dado além destes. Todas as possíveis combinações dos nomes dos tipos de imóvel e tamanhos de imóvel, todos os tamanhos de Imóvel que não possuem um tipo de imóvel definido e mais todos os nomes de tipos de imóvel não referenciados em Imóvel. Todas as possíveis combinações dos nomes dos tipos de imóvel e tamanhos de imóvel e mais todos os nomes de tipos de imóvel não referenciados em imóvel. Todas as possíveis combinações dos nomes dos tipos de imóvel e tamanhos de imóvel e mais todos os tamanhos de imóvel que não possuem um tipo de imóvel definido. 3a Questão SELECT * FROM Imovel WHERE Tamanho > 70 AND numQuartos >1 SELECT Tamanho > 70 OR numQuartos > 1 FROM Imovel SELECT Tamanho > 70 AND numQuartos > 1 FROM Imovel SELECT Imovel FROM Tamanho > 70 OR numQuartos > 1 SELECT * FROM Imovel WHERE Tamanho > 70 OR numQuartos >1 4a Questão Considere a consulta em álgebra relacional aplicada sobre as relações Cliente e Pedido, conforme a seguir: Dessa forma, pode-se afirmar que o resultado será: Os nomes dos vendedores, o nome do cliente 3021 e os códigos de seus pedidos O nome do vendedor, o nome do cliente 3021 e o código de seu pedido Os nomes dos vendedores e o nome do cliente dos pedidos cujo cliente possui código 3021 Os códigos dos vendedores dos pedidos realizados pelo cliente 3021 O código do vendedor dos pedidos realizados pelo cliente de nome 3021 5a Questão Em relação a álgebra relacional, o operador de _____________ permite combinar seleções e um produto cartesiano em uma só operação. Diferença Projeção União Junção Interseção 6a Questão II, III e IV. I e III. I, III e IV. I, II e IV. I e II. 2a Questão Em relação a álgebra linear é correto afirmar que: I - A operação de projeção é aplicada sobre apenas uma relação visando selecionar um subconjunto de tuplas (com todos os seus atributos). II O produto cartesiano é uma operação binária que combina todas as tuplas de duas tabelas. III - A operação de seleção é aplicada sobre apenas uma relação de visando projetar os atributos de uma relação de acordo com uma lista de atributos oferecida. Estão corretas: II e III I e III Somente a II Somente III Somente I 5a Questão Uma linguagem de consulta procedural, onde o objetivo fundamental é permitir a escrita de expressões relacionais é denominada de álgebra relacional. Com suas operações fundamentais é possível exprimir qualquer consulta nesta linguagem. Sendo assim, para apresentar os dados de acordo com a tabela abaixo, marque a alternativa correta que descreve a álgebra a ser utilizada. Produto.Nome Produto.Qualidade Estoque.Qtde Laranja 1 100 Laranja 2 150 Uva 1 200 Uva 2 130 Trigo 2 240 Pêssego 1 260 Pêssego 2 190 σProduto.Cod_Prod = Estoque.Cod_Prod(Produto X Estoque) πNome, Qualidade, Qtde πNome, Qualidade, Qtde(σProduto.Cod_Prod = Estoque.Cod_Prod(Produto X Estoque)) πNome, Qualidade, Qtde(σProduto.Cod_Prod = Estoque.Cod_Prod) σProduto.Cod_Prod = Estoque.Cod_Prod(πNome, Qualidade, Qtde) AULA 2 1a Questão Partindo da tabela a seguir, considerando que a mesma jáfoi criada de acordo com essa ordem de atributos, como ficaria o comando SQL para aumentar em 10% o valor unitário de cada produto? UPDATE X_PROD SET VALOR_UNIT + VALOR_UNIT * 10 /100; UPDATE X_PROD SET VALOR_UNIT = VALOR_UNIT + 10 /100; UPDATE X_PROD SET VALOR_UNIT = VALOR_UNIT + VALOR_UNIT * 10 /100; UPDATE X_PROD SET VALOR_UNIT + 10 /100; UPDATE X_PROD SET VALOR_UNIT = VALOR_UNIT * 10 /100; 2a Questão A linguagem SQL é dividida em subconjuntos de acordo com as operações que queremos efetuar sobre um banco de dados. Indique a alternativa que apresenta um exemplo de comandos DDL (Linguagem de Definição de Dados): SELECT NOME, TURMA, IDADE FROM ALUNOS DROP TABLE ALUNOS SELECT NOME FROM ALUNOS WHERE ID IN (1, 2, 3) UPDATE ALUNOS SET NOME = JOSÉ DA SILVA WHERE ID = 10 DELETE * FROM ALUNOS 3a Questão INSERT Aluguel VALUES (2056, 15/8/2017, 10, 180, 1022, 8, 104) INSERT INTO Aluguel VALUES (2056, 15/8/2017, 10, 180,1022, 8, NULL, 104) INSERT INTO Aluguel (2056, 15/8/2017, 10, 180, 1022, 8, NULL) INSERT INTO Aluguel VALUES (15/8/2017, 2056, 10, 180, 1022, 8, 104, NULL) INSERT ON Aluguel VALUES (2056, 15/8/2017, 10, 180, 1022, 8, NULL, 104) 4a Questão Considere o modelo de banco de dados abaixo: medico (CRM, NomeMedico, Idade,Cidade,Especialidade); paciente (Ident,NomePaciente,Idade,Cidade,Doenca); consulta (Ident, CRM, Data, Hora); Qual alternativa altera a idade do paciente "Fulano de tal"?. update paciente where nomePaciente="Fulano de tal" alter paciente set idade=25 alter paciente set idade=25 where nomePaciente="Fulano de tal" update paciente set idade=25 where nomePaciente="Fulano de tal" insert into paciente (idade) values (25) where nomePaciente="Fulano de tal" 5a Questão A constraint Foreign Key possui no SQL Ansi quais regras? On Delete Cascade / On Delete Set Null / On Update Cascade / On Update Set Null On Delete Set Null / On Delete Set Default / On Update Set Null / On Update Set Default On Delete Cascade / On Delete Restrict / On Delete Set Null / On Update Cascade / On Update Delete / On Update Set Null On Delete Set Null / On Delete Restrict / On Update Set Null / On Update Delete On Delete Cascade / On Delete Restrict / On Update Cascade / On Update Delete 6a Questão São comandos da categoria de Definição de Dados (DDL): GRANT / REVOKE SELECT INSERT / UPDATE / DELETE COMMIT / ROLLBACK CREATE / ALTER / DROP 7a Questão São comandos da categoria de Manipulação de Dados (DML): GRANT / REVOKE INSERT / UPDATE / DELETE COMMIT / ROLLBACK CREATE / ALTER / DROP SELECT 8a Questão Para incluir a tupla mostrada abaixo na tabela PACIENTE executaríamos o seguinte comando: ADD INTO paciente VALUES (5430005, Beatriz Ferro, 1970-05-28, feminino, casada); ADD INTO paciente SET (5430005, Beatriz Ferro, 1970-05-28, feminino, casada); INSERT INTO paciente VALUES (5430005, Beatriz Ferro, 1970-05-28, feminino, casada); INSERT INTO paciente SET (5430005, Beatriz Ferro, 1970-05-28, feminino, casada); INSERT INTO paciente (5430005, Beatriz Ferro, 1970-05-28, feminino, casada); 1a Questão Em um banco de dados, que comando SQL é utilizado para eliminar uma tabela? ALTER DROP DELETE INSERT UPDATE 2a Questão (PRODEST-ES/2014) Sobre a chave primária de uma tabela de um banco de dados relacional, é correto afirmar que: pode conter, no máximo, três atributos. não pode conter atributos do tipo numérico. não pode conter atributos do tipo textual. não há chave primária em tabelas com até 100 registros. pode ser composta por mais de um atributo. 3a Questão Ano: 2014 - Banca: INSTITUTO AOCP - Órgão: UFPB - Prova: Analista de Tecnologia da Informação - Processos Em bancos de dados Oracle, as instruções CREATE TABLE, ALTER TABLE e DROP TABLE pertencem a qual das categorias a seguir? Data Definition Language (DDL). Data Manipulation Language (DML). Session Control. System Control. Transaction Control. 4a Questão Assinale a opção que possui o comando CREATE TABLE que cria corretamente a tabela "Alunos", segundo o seguinte esquema de banco de dados: Alunos(matricula, nome, endereco, cod_curso) Cursos(codigo, nome) Admitindo que os campos "matricula" e "codigo" são chaves primárias de suas tabelas e que o campo "cod_curso" é chave estrangeira da tabela "Cursos" na tabela "Alunos". create table Alunos ( matricula int not null, nome varchar(50) not null, endereco varchar(255) null, cod_curso int not null, constraint pk_alunos primary key (nome), constraint fk_alunos_cursos foreign key (cod_curso) references Cursos(codigo) ) create table Alunos ( matricula int not null, nome varchar(50) not null, endereco varchar(255) null, cod_curso int not null, constraint pk_alunos primary key (matricula) ) create table Alunos ( matricula int not null, nome varchar(50) not null, endereco varchar(255) null, cod_curso int not null, constraint pk_alunos primary key (matricula), constraint fk_alunos_cursos foreign key (cod_curso) references Cursos(codigo) ) create table Alunos ( matricula int not null, nome varchar(50) not null, endereco varchar(255) null, cod_curso int not null, constraint fk_alunos_cursos foreign key (cod_curso) references Cursos(codigo) ) create table Alunos ( matricula int not null, nome varchar(50) not null, endereco varchar(255) null, cod_curso int not null, constraint pk_alunos primary key (matricula), constraint fk_alunos_cursos foreign key (codigo) references Cursos(cod_curso) ) 5a Questão UPDATE Anuncio INSERT ValorAnunciado TO 108 WHERE CodAnuncio = 9 UPDATE Anuncio INSERT ValorAnunciado = 108 WHERE CodAnuncio = 9 UPDATE Anuncio SET ValorAnunciado = ValorAnunciado*80% WHERE CodAnuncio = 9 UPDATE Anuncio SET ValorAnunciado TO ValorAnunciado*0.8 WHERE CodAnuncio = 9 UPDATE Anuncio SET ValorAnunciado = ValorAnunciado*0.8 WHERE CodAnuncio = 9 6a Questão Como ficaria o comando SQL para criar a tabela a seguir? CREATE TABLE X_EMPR ( CODIGO NUMBER(5) PRIMARY KEY, DESCRICAO VARCHAR2(40) NOT NULL UNIQUE, QUANTIDADE NUMBER(8), VALOR_UNIT NUMBER(9,2) ) CREATE TABLE X_EMPR ( CODIGO NUMBER(5) PRIMARY KEY, DESCRICAO VARCHAR2(40) NOT NULL, QUANTIDADE NUMBER(8), VALOR_UNIT NUMBER(9,2) ) CREATE TABLE X_PROD ( CODIGO NUMBER(5) PRIMARY KEY, DESCRICAO VARCHAR2(40) NOT NULL UNIQUE, QUANTIDADE NUMBER(8), VALOR_UNIT NUMBER(9,2) ) CREATE TABLE X_PROD ( CODIGO NUMBER(5) PRIMARY KEY, DESCRICAO VARCHAR2(40) NOT NULL, QUANTIDADE NUMBER(8), VALOR_UNIT NUMBER(9,2) ) CREATE TABLE X_PROD ( CODIGO VARCHAR2(5) PRIMARY KEY, DESCRICAO VARCHAR2(40) NOT NULL UNIQUE, QUANTIDADE NUMBER(8), VALOR_UNIT NUMBER(9,2) ) 7a Questão (PRODEST-ES/2014) Assinale a alternativa que contém a consulta SQL correta para excluir, da tabela T, os registros cujos valores do campo numérico B estejam compreendidos entre 20 e 40. DELETE T FOR B BETWEEN 20 AND 40 DELETE FROM T WHERE B BETWEEN 20 AND 40 DELETE T.B AND B >= 20 AND B <= 40 DELETE B FROM T B >= 20 AND B <= 40 DELETE T HAVING B INTO 20 AND 40 8a Questão Qual o efeito da seguinte instrução no banco de dados? DELETE FROM tabela Exclui a primeira linha da tabela Exclui todas as linhas da tabela Exclui todas as colunas da tabela Exclui o banco de dados inteiro Exclui a tabela do banco de dados 1a Questão São comandos DDL CREATE, ALTER, DROP INSERT, UPDATE, DROP INSERT, UPDATE, DELETE CREATE, UPDATE, DELETE CREATE, ALTER, DELETE 2a Questão O diagrama acima apresenta uma classe denominada Municipio, para armazenar informações sobre determinado município, seu código, nome, tamanho e o estado a que pertence. Também há uma classe denominada Estado, para armazenar dados da unidade da Federação, como seucódigo e sua denominação. Com base nesse diagrama, e considerando a utilização da linguagem SQL, assinale a opção que apresenta a forma correta de criação da tabela Estado, considerando a criação das chaves primárias (PK) e estrangeiras (FK). create table estado ( codigo_ibge integer primary key, nome_estado varchar (255) ) create table estado ( codigo_ibge integer pk, nome_estado varchar(100) ) create table estado ( codigo_ibge integer primary key, nome_estado varchar (255), uf integer FK ) create table estado ( codigo_ibge integer primary key, nome_estado varchar (255), uf primary key ) create table estado ( codigo_ibge pk, nome_estado ) 3a Questão Para o comando apresentado a seguir, indique a alternativa que apresenta o resultado obtido com a sua execução: DROP TABLE Funcionario; A tabela Funcionario é criada no banco de dados. O banco de dados Funcionario é criado. Todos os registros da tabela Funcionario são excluídos. A tabela Funcionario é removida do banco de dados. O banco de dados Funcionario é excluído. 4a Questão Marque a opção onde certamente ocorrerá um erro de execução: insert from disciplina values (1, Implementação de BD); insert into disciplina values (1, Implementação de BD), (2, Modelagem de Dados); insert into disciplina(codigo, nome) values (1, Implementação de BD); insert into disciplina(codigo, nome) values (1, Implementação de BD); insert into disciplina(codigo, nome) values (100+1, Implementação de BD); 5a Questão Qual dos comandos SQL abaixo efetua uma alteração desabilitando o recebimento de cesta básica para os funcionários que ganham mais que R$3.000,00? UPDATE funcionario SET funcionario_cestabasica=false UPDATE funcionario SET funcionario_cestabasica=false WHERE funcionario_salario>3001 UPDATE funcionario SET funcionario_cestabasica=false WHERE funcionario_salario>=3000 UPDATE funcionario SET funcionario_cestabasica=false WHERE funcionario_salario<3000 UPDATE funcionario SET funcionario_cestabasica=false WHERE funcionario_salario>3000 6a Questão Uma imobiliária está criando um banco de dados específico para aluguel de imóveis por temporada. A primeira tabela a ser criada no banco de dados é a tabela TipoImovel, representada pela figura: Sabendo-se que o atributo NomeTipoImovel é obrigatório, assinale qual das alternativas abaixo cria esta tabela corretamente no banco de dados: CREATE TABLE TipoImovel (CodTipoImovel INTEGER, NomeTipoImovel VARCHAR (50), Primary Key (CodTipoImovel)) CREATE TABLE TipoImovel (CodTipoImovel INTEGER, NomeTipoImovel VARCHAR (50)) CREATE TABLE TipoImovel (CodTipoImovel INTEGER, NomeTipoImovel VARCHAR (50) NOT NULL, Primary Key (CodTipoImovel)) CREATE TABLE TipoImovel (CodTipoImovel INTEGER, NomeTipoImovel VARCHAR (50) NOT NULL) CREATE TABLE TipoImovel (CodTipoImovel INTEGER, PRIMARY KEY, NomeTipoImovel VARCHAR (50) NOT NULL) 7a Questão Um projetista de banco de dados, novato na profissão, foi incumbido de criar um banco para armazenar dados sobre clientes de uma empresa, contendo identificador e nome; vendedores dessa empresa, também com identificador e nome; e data da realização das vendas. Esse projetista decidiu criar uma única tabela, cujo esquema é apresentado abaixo. CREATE TABLE VENDAS( ID_CLIENTE INTEGER, NOME_CLIENTE VARCHAR(60), ID_VENDEDOR CHAR(2), NOME_VENDEDOR VARCHAR(60), DATA_VENDA DATE ); Após criar a tabela, o projetista inseriu alguns registros nela, de forma que o estado final ficou como o descrito na imagem abaixo: Ao analisar a solução proposta pelo novato, outro projetista, mais experiente, informou que, em virtude da tabela não estar adequadamente normalizada, algumas operações em SQL, realizadas sobre ela, podem levar o banco de dados a um estado inconsistente ou à perda de informações. Quais são essas operações? INSERT e SELECT, apenas. DELETE e SELECT, apenas. UPDATE e DELETE, apenas. DELETE e INSERT, apenas. UPDATE, DELETE e INSERT. 8a Questão Qual dos comandos SQL abaixo pode ser utilizado para incluir na definição da tabela aluno o atributo CPF com 11 caracteres? alter table aluno insert cpf char(11); add into aluno cpf char(11); update table aluno insert cpf char(11); alter table aluno add cpf char(11); insert into aluno cpf char(11); 1a Questão Que cláusula do comando SQL CREATE TABLE inclui a lista dos atributos que constituem uma chave candidata? CHECK NOT NULL RESTRICT UNIQUE FOREIGN KEY AULA 3 1a Questão As três cláusulas de uma consulta SQL são: select, up, what. start, from, who. select, from, where. start, from, to. select, initial, final. 2a Questão O esquema de banco de dados apresentado abaixo faz parte de um banco de dados criado a partir de um conjunto de dados públicos de captura de tubarões entre os anos de 2001 e 2013 na costa da Austrália. Os dados podem ser baixados no endereço: https://data.qld.gov.au/dataset/shark-control-program-shark-catch-statistics/resource/5c6be990-3938-4125-8cca-dac0cd734263 Características do esquema: Chave primária sublinhada e chave estrangeira em itálico. Seguem algumas tabelas do Esquema: Ordem (IDOrdem, NomeOrdem) Espécie (IDEspécie, IDOrdem. Nome_Científico, TamMaior, TamMenor, TamMédio) Nome (IDNome, IDEspécie, NomePopular) Tubarão (IDTubarão, IDEspécie, Comprimento, Sexo) Captura (NumCaptura, IDTubarão, IDLocal, Data, TempAgua) Deseja-se exibir os nomes das ordens das Espécies de Tubarões cadastradas até o identificador de espécie de número 018103, sem que os nomes se repitam. Assinale a alternativa correta abaixo: SELECT DISTINCT nomeOrdem FROM Ordem O, Espécie E WHERE O.IDOrdem = E.IDordem AND E.IDEspécie <= 018013; SELECT nomeOrdem FROM Ordem O, Espécie E WHERE O.IDOrdem = E.IDordem AND E.IDEspécie <= 018013; SELECT nomeEspécie FROM Ordem O, Espécie E WHERE O.IDOrdem = E.IDordem AND E.IDEspécie <= 018013; SELECT DISTINCT nomeOrdem FROM Ordem O, Espécie E WHERE O.IDEspécie = E.IDEspécie AND E.IDEspécie <= 018013; SELECT DISTINCT nomeEspécie FROM Ordem O, Espécie E WHERE O.IDOrdem = E.IDordem AND E.IDEspécie < 018013; 3a Questão ALUNO (cpf : string , nome : string , endereco : string, telefone : string) MATRICULA (cpf : string , cod-cad : string) CADEIRA (cod-cad : string , nome : string , creditos : number) Qual o comando SQL que obtém apenas os nomes de todos os alunos? LIST nome FROM ALUNO SELECT nome WHERE ALUNO LIST * FROM ALUNO SELECT nome FROM ALUNO SELECT * FROM ALUNO WHERE nome IS STRING 4a Questão Considere a seguinte consulta SQL:SELECT XXX A FROM TAB.Para que não haja repetições nos valores obtidos como resposta para o atributo A, XXX deve ser substituído por: ALL DISTINCT SINGLE IN LIKE 5a Questão Um programador precisa utilizar, em uma aplicação conectada a um banco de dados Oracle, uma instrução SQL para exibir apenas os nomes de funcionários da tabela func cujo campo nome se inicie pela letra P. A instrução correta que deve ser utilizada é SELECT nome FROM func WITH P% IN nome; SELECT nome FROM func WHERE nome=P%; SELECT nome FROM func WHERE nome LIKE P%; SELECT nome FROM func LIKE nome=P%; SELECT nome FROM func WHERE nome CONTAINS P%; 6a Questão Observe a tabela abaixo, referente a um banco de dados empresa: Para gerar uma consulta SQL com todos os atributos, classificados por NOME_PACIENTE, deve-se utilizar o seguinte comando: SELECT * OVER PACIENTE ASC NOME_PACIENTE; SELECT * FROM PACIENTE DESC NOME_PACIENTE; SELECT * FROM PACIENTE ASC NOME_PACIENTE; SELECT * FROM PACIENTE ORDER BY NOME_PACIENTE; SELECT * OVER PACIENTE ORDER BY NOME_PACIENTE; 7a Questão Considere a relação abaixo: AUTOMÓVEL (placa, fabricante, modelo, cor, data_de_fabricação) A consultaSQL que responde a questão "Liste todos os automóveis (placa, modelo, cor) fabricados pela VW ou pela Fiat" é: SELECT PLACA, MODELO, COR FROM AUTOMOVEL WHERE FABRICANTE IS (VW, FIAT); Nenhuma das resposta acima. SELECT PLACA, MODELO, COR FROM AUTOMOVEL WHERE FABRICANTE = VW AND FABRICANTE = FIAT; SELECT PLACA, MODELO, COR FROM AUTOMOVEL WHERE FABRICANTE BETWEEN VW AND FIAT; SELECT PLACA, MODELO, COR FROM AUTOMOVEL WHERE FABRICANTE IN (VW, FIAT); 8a Questão O esquema de banco de dados apresentado abaixo faz parte de um banco de dados criado a partir de um conjunto de dados públicos de captura de tubarões entre os anos de 2001 e 2013 na costa da Austrália. Os dados podem ser baixados no endereço: https://data.qld.gov.au/dataset/shark-control-program-shark-catch-statistics/resource/5c6be990-3938-4125-8cca-dac0cd734263 Características do esquema: Chave primária sublinhada e chave estrangeira em itálico. Seguem algumas tabelas do Esquema: Espécie (IDEspécie, IDOrdem. Nome_Científico, TamMaior, TamMenor, TamMédio) Tubarão (IDTubarão, IDEspécie, Comprimento, Sexo) Captura (NumCaptura, IDTubarão, IDLocal, Data, TempAgua) Local (IDLocal, CodArea, NomeLocal) Area (CodArea, NomeArea) Sabendo-se que um metro possui 39,3700787 polegadas, assinale a alternativa correto abaixo que consulta a data da captura, a temperatura da água e o comprimento do tubarão convertido em polegadas com o título Polegadas: SELECT DATA, TEMPAGUA, "COMPRIMENTO * 39,3700787" Polegadas FROM TUBARÃO T, CAPTURA C WHERE C.IDTUBARÃO = T.IDTUBARÃO; SELECT DATA, TEMPAGUA, COMPRIMENTO * 39,3700787 Polegadas FROM TUBARÃO T, CAPTURA C WHERE C.IDTUBARÃO = T.IDTUBARÃO; SELECT DATA, TEMPAGUA, COMPRIMENTO * 39.3700787 Polegadas FROM TUBARÃO T, CAPTURA C WHERE C.IDTUBARÃO = T.IDTUBARÃO; SELECT DATA, TEMPAGUA, (COMPRIMENTO * 39,3700787) Polegadas FROM TUBARÃO T, CAPTURA C WHERE C.IDTUBARÃO = T.IDTUBARÃO; SELECT DATA, TEMPAGUA, COMPRIMENTO * 39.3700787 Polegadas FROM TUBARÃO T, CAPTURA C; 5a Questão O esquema de banco de dados apresentado abaixo faz parte de um banco de dados criado a partir de um conjunto de dados públicos de captura de tubarões entre os anos de 2001 e 2013 na costa da Austrália. Os dados podem ser baixados no endereço: https://data.qld.gov.au/dataset/shark-control-program-shark-catch-statistics/resource/5c6be990-3938-4125-8cca-dac0cd734263 Características do esquema: Chave primária sublinhada e chave estrangeira em itálico. Seguem algumas tabelas do Esquema: Espécie (IDEspécie, IDOrdem. Nome_Científico, TamMaior, TamMenor, TamMédio) Nome (IDNome, IDEspécie, NomePopular) Tubarão (IDTubarão, IDEspécie, Comprimento, Sexo) Captura (NumCaptura, IDTubarão, IDLocal, Data, TempAgua) Assinale em qual das consultas abaixo são selecionados nomes populares de tubarões, sem repetição, que foram capturados com temperatura da água igual a 25 e 27 graus: SELECT DISTINCT NomePopular FROM NOME N, ESPÉCIE E, TUBARÃO T, CAPTURA C WHERE N.IDESPÉCIE = E.IDESPECIE AND T.IDTUBARÃO = C.IDTUBARÃO AND TEMPAGUA IN(25,27); SELECT NomePopular FROM NOME N, ESPÉCIE E, TUBARÃO T, CAPTURA C WHERE N.IDESPÉCIE = E.IDESPECIE AND T.IDTUBARÃO = C.IDTUBARÃO AND TEMPAGUA NOT BETWEEN 25 AND 27; SELECT DISTINCT NomePopular FROM NOME N, ESPÉCIE E, TUBARÃO T, CAPTURA C WHERE N.IDESPÉCIE = E.IDESPECIE AND E.IDESPECIE = T.IDESPECIE AND T.IDTUBARÃO = C.IDTUBARÃO AND TEMPAGUA IN(25,27); SELECT DISTINCT NomePopular FROM NOME N, ESPÉCIE E, TUBARÃO T, CAPTURA C WHERE N.IDESPÉCIE = E.IDESPECIE AND E.IDESPECIE = T.IDESPECIE AND T.IDTUBARÃO = C.IDTUBARÃO AND TEMPAGUA = 25 AND 27; SELECT NomePopular FROM NOME N, ESPÉCIE E, TUBARÃO T, CAPTURA C WHERE N.IDESPÉCIE = E.IDESPECIE AND E.IDESPECIE = T.IDESPECIE AND T.IDTUBARÃO = C.IDTUBARÃO AND TEMPAGUA BETWEEN 25 AND 27; 4a Questão Com relação ao comando a seguir, CREATE TABLE empregado (cod_empregado DECIMAL(6) NOT NULL, nome CHAR(15), cod_chefe DECIMAL(6), cpf CHAR(11) NOT NULL, cod_dep DECIMAL(3) NOT NULL, CONSTRAINT PRIMARY KEY (cod_empregado), CONSTRAINT FOREIGN KEY (cod_chefe) REFERENCES empregado (cod_empregado), CONSTRAINT FOREIGN KEY (cod_dep) REFERENCES departamento (codigo), CONSTRAINT UNIQUE (cpf)); é CORRETO afirmar que: A coluna cod_chefe é chave estrangeira da tabela empregado. A coluna cpf é chave estrangeira da tabela empregado. A coluna cod_empregado é uma chave estrangeira da tabela empregado. A coluna cod_dep pode receber valores nulos. A coluna cpf é chave primária da tabela empregado. 6a Questão SELECT DISTINCT NOMEP "Nome do Professor" FROM PROFESSOR P , TCC T, ALUNO A WHERE P.MATP = A.MATP AND A.MATA = T.MATA; SELECT NOMEP FROM PROFESSOR P , TCC T, ALUNO A WHERE P.MATP = A.MATP AND A.MATA = T.MATA; SELECT NOMEP "Nome do Professor" FROM PROFESSOR P , TCC T, ALUNO A WHERE P.MATP = A.MATP AND A.MATA = T.MATA; SELECT DISTINCT NOMEP FROM PROFESSOR P , TCC T, ALUNO A; SELECT DISTINCT NOMEP "Nome do Professor" FROM PROFESSOR P , TCC T, ALUNO A; 7a Questão De acordo com o modelo de dados definido pelas tabelas a seguir, indique a instrução SQL adequada para: Apresentar apenas o nome completo do Empregado que atende ao Cliente ¿Ponto Quente¿. SELECT PRIM_NOME, ULT_NOME FROM EMPREGADO E, CLIENTE C WHERE C.NOME='Ponto Quente'; SELECT PRIM_NOME || || ULT_NOME FROM EMPREGADO E, CLIENTE C WHERE C.VENDEDOR = E.ID AND C.NOME= 'Ponto Quente'; SELECT PRIM_NOME, ULT_NOME FROM EMPREGADO C, CLIENTE E WHERE C.VENDEDOR = E.ID AND C.NOME=' Ponto Quente'; SELECT PRIM_NOME || || ULT_NOME FROM EMPREGADO E, CLIENTE C WHERE E.VENDEDOR = C.ID AND C.NOME=' Ponto Quente'; SELECT PRIM_NOME, ULT_NOME FROM EMPREGADO E, CLIENTE C WHERE C.VENDEDOR = E.ID AND C.NOME=' Ponto Quente'; Aula 4 1a Questão Observe a tabela empregado: Qual a quantidade de registros retornados ao efetuarmos a consulta abaixo: 3 4 2 1 0 2a Questão De acordo com o modelo de dados definido pelas tabelas a seguir, indique a instrução SQL adequada para: Apresentar apenas os nomes completos dos Empregados que tenham no cargo a palavra "venda". SELECT PRIM_NOME, ULT_NOME FROM EMPREGADO WHERE UPPER(CARGO) LIKE %VENDA% ; SELECT PRIM_NOME || || ULT_NOME FROM EMPREGADO WHERE CARGO LIKE %VENDA% ; SELECT PRIM_NOME || || ULT_NOME FROM EMPREGADO WHERE UPPER(CARGO) LIKE %VENDA% ; SELECT PRIM_NOME || || ULT_NOME FROM EMPREGADO WHERE UPPER(CARGO) LIKE %venda% ; SELECT PRIM_NOME, ULT_NOME FROM EMPREGADO WHERE CARGO LIKE %VENDA% ; 3a Questão O comando SELECT FROM WHERE corresponde as seguintes operações da álgebra relacional: Projeção e União Seleção e Projeção Seleção e Diferença União e Interseção Seleção e Junção 4a Questão Sabendo-se que existem dados de TCC cadastrados com datas de defesa que variam de 20/11/2015 até o dia de hoje, assinale qual das alternativas abaixo retornaria o mesmo resultado que o comando "SELECT * FROM TCC WHERE DTDEFESA IN (21/11/2016, 22/11/2016);": SELECT * FROM TCC WHERE DTDEFESA > 21/11/2016 AND < 22/11/2016; SELECT * FROM TCC WHERE DTDEFESA = 21/11/2016 AND 22/11/2016; SELECT * FROM TCC WHERE DTDEFESA BETWEEN 21/11/2016 AND 22/11/2016; SELECT * FROM TCC WHERE DTDEFESA BETWEEN (21/11/2016; 22/11/2016); SELECT * FROM TCC WHERE DTDEFESA => 21/11/2016 AND <= 22/11/2016; 5a Questão Sabendo-se que existem dados de TCC cadastrados com datas de defesa que variam de 20/11/2012 até a data de hoje, assinale qual das alternativas abaixo retornaria o mesmo resultado que o comando "SELECT * FROM TCC WHERE DTDEFESA BETWEEN 15/11/2014 AND 16/11/2014;": SELECT * FROM TCC WHERE DTDEFESA => 15/11/2014 AND <= 16/11/2014; SELECT * FROM TCC WHERE DTDEFESA IN (15/11/2014 AND 16/11/2014); SELECT * FROM TCC WHERE DTDEFESA > 15/11/2014 AND < 16/11/2014; SELECT * FROM TCC WHERE DTDEFESA= 15/11/2014 AND 16/11/2014; SELECT * FROM TCC WHERE DTDEFESA IN (15/11/2014,16/11/2014); 6a Questão Durante uma consulta SQL, utilizando o comando select, é possível selecionar linhas que se assemelham em uma determinada porção de uma string. Qual é o operador utilizado para esse tipo de seleção? Operador de Intervalos (between) Operador de comparação (=,>,<) Operador de Listas(in) Operador de Caracteres semelhantes (like) Operador de indisponibilidade (maybe) 7a Questão DELETE FROM ALUGUEL WHERE CODIMOVEL IS NOT NULL DELETE * FROM ALUGUEL WHERE CODANUNCIO IS NULL DELETE ALL FROM ALUGUEL WHERE CODANUNCIO IS NULL DELETE ALL FROM ALUGUEL WHERE CODIMOVEL IS NULL DELETE FROM ALUGUEL WHERE CODANUNCIO IS NOT NULL 8a Questão O esquema de banco de dados apresentado abaixo faz parte de um banco de dados criado a partir de um conjunto de dados públicos de captura de tubarões entre os anos de 2001 e 2013 na costa da Austrália. Os dados podem ser baixados no endereço: https://data.qld.gov.au/dataset/shark-control-program-shark-catch-statistics/resource/5c6be990-3938-4125-8cca-dac0cd734263 Características do esquema: Chave primária sublinhada e chave estrangeira em itálico. Seguem algumas tabelas do Esquema: Nome (IDNome, IDEspécie, NomePopular) Tubarão (IDTubarão, IDEspécie, Comprimento, Sexo) Captura (NumCaptura, IDTubarão, IDLocal, Data, TempAgua) Local (IDLocal, CodArea, NomeLocal) Area (CodArea, NomeArea) Deseja-se realizar uma consulta da tabela Captura exibindo-se a data e a temperatura da água apresentada em graus Celsius, convertida para graus Fahrenheit (Fórmula °F = °C × 1, 8 + 32). Assinale a alternativa que exibe os dados convertidos corretamente: SELECT DATA, AVG (TEMPAGUA) * 1.8 + 32 "°F" FROM CAPTURA; SELECT DATA, TEMPAGUA * (1.8 + 32) "°F" FROM CAPTURA; SELECT DATA, TEMPAGUA * 1.8 + 32 "°F" FROM CAPTURA; SELECT DATA, TEMPAGUA * 1,8 + 32 "°F" FROM CAPTURA; SELECT DATA, TEMPAGUA * (1,8 + 32) "°F" FROM CAPTURA; 1a Questão Assinale a alternativa que retorna corretamente o seguinte resultado: "Todos os alunos cujos nomes terminam em Silva e começam por T ou B." SELECT * FROM alunos WHERE nome = BT%Silva SELECT * FROM alunos WHERE nome LIKE [BT]% OR nome LIKE %Silva SELECT * FROM alunos WHERE nome LIKE BorT%Silva SELECT * FROM alunos WHERE nome LIKE [B-T]%Silva SELECT * FROM alunos WHERE nome LIKE [BT]%Silva 2a Questão SELECT DISTINCT NumQuartos FROM Imovel SELECT DISTINCT ALL NumQuartos FROM Imovel SELECT * NumQuartos FROM Imovel SELECT DISTINCT * FROM Imovel SELECT ALL NumQuartos FROM Imovel 3a Questão Acerca do conjunto de operações para manipulação de dados, marque a alternativa correta: A cláusula ORDER BY possibilita ordenar a filtragem feita por GROUP BY. O predicado IS NULL faz a checagem de valores zerados. O predicado LIKE é um predicado com operações de boleanos. O Predicado BETWEEN retorna resultados entre dois valores fornecidos pelo usuário. Nenhuma das respostas anteriores. 4a Questão De acordo com o modelo de dados definido pelas tabelas a seguir, indique a instrução SQL adequada para: Apresentar os Ids e os nomes dos Departamentos ordenados por nome de forma Decrescente. SELECT ID, NOME FROM DEPARTAMENTO ORDER BY DESC NOME; SELECT ID, NOME FROM DEPARTAMENTO ORDER BY NOME; SELECT ID, NOME FROM DEPARTAMENTO ORDER BY ASC NOME; SELECT ID, NOME FROM DEPARTAMENTO ORDER BY NOME DESC; SELECT ID, NOME FROM DEPARTAMENTO ORDER BY NOME ASC; 5a Questão Considere a relação: PRODUTO (codigo, unidade, descrição, valor_unitário) A consulta em SQL para reponder a questão "Liste o código dos produtos com valores unitários entre R$ 500,00 e R$ 1000,00" é: SELECT CODIGO FROM PRODUTO WHERE VALOR_UNITARIO IN [500, 1000]; SELECT CODIGO FROM PRODUTO WHERE VALOR_UNITARIO LIKE 500 AND 1000; Nenhuma das consultas acima. SELECT CODIGO FROM PRODUTO WHERE VALOR_UNITARIO > 500; SELECT CODIGO FROM PRODUTO WHERE VALOR_UNITARIO BETWEEN 500 AND 1000; 6a Questão Qual das consultas a seguir responde a seguinte pergunta: quais os nomes dos alunos que possuem média maior que 6 e idade não superior a 30 anos? SELECT nome FROM alunos WHERE media > 6 AND idade <= 30 SELECT nome, endereco FROM alunos WHERE media > 6 OR idade > 30 SELECT nome FROM professores WHERE media > 6 AND idade <= 30 SELECT nome FROM alunos WHERE media >= 6 OR idade <= 30 SELECT nome, cpf FROM alunos WHERE media >= 6 AND idade <= 30 7a Questão O comando SQL para excluir os registros da tabela Aluno, cujo campo nome comece com a letra M, é: DELETE FROM Aluno WHERE nome LIKE M%. DELETE FROM Aluno WHERE nome=M. DELETE FROM Aluno WHERE nome SUCH %M. DELETE FROM Aluno DELETE FROM Aluno WHERE nome LIKE G%. 8a Questão Dada a instrução SQL: SELECT * FROM Paciente WHERE endereço NOT LIKE "Avenida%"; É correto afirmar que serão selecionados todos os registros da tabela Paciente que possuem no final do conteúdo do campo "endereço" a palavra Avenida. todos os registros da tabela Paciente que possuem no início do conteúdo do campo "endereço" a palavra Avenida. apenas os registros da tabela Paciente que não possuem como inicial do conteúdo do campo "endereço" a palavra Avenida. todos os registros da tabela Paciente que possuem em alguma parte do conteúdo do campo "endereço" a palavra Avenida. todos os registros da tabela Paciente que não possuem em alguma parte do conteúdo do campo "endereço" a palavra Avenida. 1a Questão SELECT CODALUGUEL, CODCLIENTE, DATAALUGUEL, PERIODO, VALORDIARIA, PERIODO*VALORDIARIA TOTAL FROM ALUGUEL; SELECT CODALUGUEL, CODCLIENTE, DATAALUGUEL, PERIODO, VALORDIARIA, PERIODO^VALORDIARIA TOTAL FROM ALUGUEL; SELECT CODALUGUEL, CODCLIENTE, DATAALUGUEL, PERIODO, VALORDIARIA, PERIODO*VALORDIARIA FROM ALUGUEL; SELECT CODALUGUEL, CODCLIENTE, DATAALUGUEL, PERIODO, VALORDIARIA, PERIODO+VALORDIARIA TOTAL FROM ALUGUEL; SELECT CODALUGUEL, CODCLIENTE, DATAALUGUEL, PERIODO, VALORDIARIA, TOTAL FROM ALUGUEL; 2a Questão DELETE FROM ALUGUEL WHERE CODIMOVEL IS NOT NULL DELETE ALL FROM ALUGUEL WHERE CODANUNCIO IS NULL DELETE ALL FROM ALUGUEL WHERE CODIMOVEL IS NULL DELETE * FROM ALUGUEL WHERE CODANUNCIO IS NULL DELETE FROM ALUGUEL WHERE CODANUNCIO IS NOT NULL 3a Questão SELECT * FROM TipoImovel WHERE Descricao LIKE %churrasqueira% SELECT * FROM TipoImovel WHERE Descricao LIKE _churrasqueira* SELECT * FROM Imovel WHERE Descricao LIKE _churrasqueira% SELECT * FROM Imovel WHERE Descricao LIKE *churrasqueira* SELECT * FROM Imovel WHERE Descricao LIKE %churrasqueira% 4a Questão Acerca do conjunto de operações para manipulação de dados, marque a alternativa correta: O operador LIKE é usado para operações de booleanos A cláusula WHERE restringe o número de linhas no resultado da consulta O operador AND faz a checagem de valores zerados O operador ALIAS é usado para renomear definitivamente colunas e tabelas A cláusula ORDER BY ordena, por padrão, os valores decrescentemente 5a Questão Observe a tabela R: Qual será o resultado da consulta: SELECT X FROM R WHERE Y is null; 1 e 4 4 e null 1 e 5 null e 5 5 6a Questão Em uma instrução SQL, o caractere utilizado para representar qualquer caractere em uma consulta é o # & $ ? % 7a Questão Considere a relação abaixo: CLIENTE (cpf, nome, endereço, telefone) A consulta SQL que responde a pergunta "Quais os clientes (cpf e nome) que não possuem endereço cadastrado" é: Nenhuma das respostas acima. SELECT CPF, NOME FROM CLIENTE WHERE ENDERECO IS NOT NULL; SELECT CPF, NOME FROM CLIENTE WHERE ENDERECO IS NULL; SELECT * FROM CLIENTE WHERE ENDERECO ISNULL; SELECT CPF, NOME FROM CLIENTE; 8a Questão Sabendo-se que existem dados de TCC cadastrados com datas de defesa que variam de 20/11/2012 até o dia de hoje, assinale qual das alternativas abaixo retornaria o mesmo resultado que o comando "SELECT * FROM TCC WHERE DTDEFESA IN (21/11/2013, 22/11/2014);": SELECT * FROM TCC WHERE DTDEFESA > 21/11/2013 AND < 22/11/2014; SELECT * FROM TCC WHERE DTDEFESA = 21/11/2013 AND 22/11/2014; SELECT * FROM TCC WHERE DTDEFESA BETWEEN 21/11/2013 AND 22/11/2014; SELECT * FROM TCC WHERE DTDEFESA BETWEEN (21/11/2013; 22/11/2014); SELECT * FROM TCC WHERE DTDEFESA => 21/11/2013 AND <= 22/11/2014; Aula 5 1a Questão Qual será o resultado da consulta SQL SELECT COUNT(*) FROM pecas WHERE cor=Vermelho ao ser aplicada na tabela peças? 3 2 4 1 0 2a Questão Para o comando apresentado a seguir, indique a alternativa que apresenta o resultado obtido com a sua execução: SELECT ID, DESCRICAO FROM Turma ORDER BY DESCRICAO desc; Seleciona todos os campos da tabela Turma ordenando os registros por DESCRICAO em ordem decrescente Seleciona os campos ID e DESCRICAO da tabela Turma Seleciona os campos ID e DESCRICAO da tabela Turma ordenando os registros por DESCRICAO em ordem decrescente Seleciona todos os registros da tabela Turma Seleciona todos os campos e os registros da tabela turma 3a Questão Quando desejamos selecionar o maior e o menor valor de um atributo numérico usamos: SUM COUNT MIN, MAX MAIOR, MENOR AVG 4a Questão 3,45 4,29 10 2,35 6 5a Questão Em SQL (Structured Query Language), as funções de agregação são muito úteis para obtenção de informação resumida sobre um resultado de um comando SELECT e também no tratamento de informações de forma agrupada (geralmente em grupos menores). No agrupamento de informações, resultados de consultas SQL, algumas cláusulas devem ser utilizadas quando se pretende restringir o conjunto de registros a ser utilizado. Nesse sentido, analise a afirmativa a seguir. Utiliza-se a cláusula ________________ sempre que se pretende restringir os registros a serem considerados na seleção. A cláusula ________________ serve para restringir os grupos que foram formados depois de aplicada a restrição da cláusula ________________." Assinale a alternativa que completa correta e sequencialmente a afirmativa anterior. GROUP BY / HAVING / WHERE WHERE / HAVING / WHERE HAVING / WHERE / HAVING WHERE / HAVING / GROUP BY WHERE / GROUP BY / HAVING 6a Questão Quando usar o Group By Quando usar funções de Coluna Quando usar o Order By em conjunto com a função SUM Quando Usar o Order By Quando usar a Função Where Sempre apos o comando Where 7a Questão Considere a tabela a seguir: Qual a função a ser utilizada em um script SQL quando se desejar obter o número de cidades cadastradas sum(reg) avg(reg) count(cidade) count(*) max(reg) 8a Questão Considere a seguinte tabela de Empregados: Empregado (CodEmpregado, Nome, Salario) Escolha o comado SQL que liste o nome de todos os empregados sem repetição e em ordem decrescente: SELECT Nome FROM Empregado ORDER BY Nome SELECT DISTINCT Nome FROM Empregado ORDER BY Nome DESC SELECT DISTINCT Nome FROM Empregado GROUP BY Nome SELECT Nome FROM Empregado ORDER BY DISTINCT Nome SELECT ORDER BY Nome FROM Empregado WHERE DISTINCT Nome 1a Questão II e III. I e III. Somente I. I, II e III. I e II. 2a Questão Após a execução dos seguintes comandos em linguagem SQL: CREATE TABLE Carros (Codigo int PRIMARY KEY, Modelo varchar(30)) INSERT INTO Carros VALUES (NULL, Alfa Romeo) INSERT INTO Carros VALUES (5000, Mazda) SELECT COUNT(*) FROM Carros Será retornado o valor: 2 1 5000 NULL 0 3a Questão O esquema de banco de dados apresentado abaixo faz parte de um banco de dados criado a partir de um conjunto de dados públicos de captura de tubarões entre os anos de 2001 e 2013 na costa da Austrália. Os dados podem ser baixados no endereço: https://data.qld.gov.au/dataset/shark-control-program-shark-catch-statistics/resource/5c6be990-3938-4125-8cca-dac0cd734263 Características do esquema: Chave primária sublinhada e chave estrangeira em itálico. Seguem algumas tabelas do Esquema: Tubarão (IDTubarão, IDEspécie, Comprimento, Sexo) Captura (NumCaptura, IDTubarão, IDLocal, Data, TempAgua) Local (IDLocal, CodArea, NomeLocal) Area (CodArea, NomeArea) Deseja-se saber qual a quantidade de locais que foram utilizados na captura de tubarões agrupados pelo nome de cada área. Assinale a alternativa que retorna corretamente esta consulta: SELECT NOMEAREA, COUNT (L.CODAREA)"QTD DE LOCAIS" FROM AREA A, LOCAL L WHERE A.CODAREA = L.CODAREA GROUP BY NOMEAREA; SELECT NOMEAREA, COUNT (CODAREA)"QTD DE LOCAIS" FROM AREA, LOCAL GROUP BY NOMEAREA; SELECT NOMELOCAL, COUNT (L.CODAREA)"QTD DE LOCAIS" FROM AREA A, LOCAL L WHERE A.CODAREA = L.CODAREA GROUP BY NOMEAREA; SELECT NOMEAREA, COUNT (L.CODAREA)"QTD DE LOCAIS" FROM AREA A, LOCAL L WHERE A.CODAREA = L.CODAREA; SELECT NOMELOCAL, COUNT (CODAREA)"QTD DE LOCAIS" FROM AREA A, LOCAL L WHERE A.CODAREA = L.CODAREA GROUP BY NOMEAREA; 4a Questão Em uma tabela criada no banco de dados com o nome VEICULOS, contendo os campos ID, DESCRICAO, MARCA e MODELO, indique a alternativa que apresenta o comando correto para selecionar a quantidade de veículos cadastrados por modelo, ordenado por modelo em ordem crescente. SELECT MODELO, COUNT(ID) FROM VEICULOS GROUP BY MARCA ORDER BY MODELO desc; SELECT MODELO, COUNT(ID) FROM VEICULOS GROUP BY MODELO ORDER BY MODELO Asc; SELECT * FROM VEICULOS ORDER BY MODELO desc; SELECT * FROM VEICULOS GROUP BY MODELO; SELECT DESCRICAO, MODELO FROM VEICULOS ORDER BY DESCRICAO desc; 5a Questão SELECT MEDIA(NUMVAGASGARAGEM) "MÉDIA NUM. VAGAS DE GARAGEM" FROM IMOVEL SELECT AVG(NUMVAGASGARAGEM) FROM IMOVEL SELECT AVG(NUMVAGASGARAGEM) "MÉDIA NUM. VAGAS DE GARAGEM" FROM IMOVEL SELECT SUM(NUMVAGASGARAGEM) "MÉDIA NUM. VAGAS DE GARAGEM" FROM IMOVEL SELECT MEDIA(NUMVAGASGARAGEM) FROM IMOVEL 6a Questão Acerca do conjunto de operações para manipulação de dados, marque a alternativa correta: DESC é obrigatoriamente necessário à cláusula ORDER BY quando se deseja ordenar decrescentemente O operador LIKE é usado para operações com booleanos O operador AND faz a checagem de valores zerados O operador IN pode ser usado para comparar valores na cláusula FROM O operador ALIAS é usado para renomear definitivamente colunas e tabelas 7a Questão O esquema abaixo refere-se a um banco de dados criado para auxiliar na gerência de orientação de alunos por professores e da defesa do Trabalho de Conclusão de Curso (TCC) pelos alunos. Analise-o: Professor (MatP,NomeP, telP, emailP) Aluno (MatA, MatP, NomeA, emailA) TCC (IDTCC, MatA, Titulo, Resumo) Assinale a única alternativa que retorna exatamente os dados exibidos na figura: SELECT NOMEP PROFESSOR, NOMEA ALUNO, TITULO "TÍTULO" FROM PROFESSOR P, ALUNO A, TCC T WHERE P.MATP = A.MATP; SELECT NOMEP PROFESSOR, NOMEA ALUNO, TITULO "TÍTULO" FROM PROFESSOR P, ALUNO A, TCC T WHERE P.MATP = A.MATP AND A.MATA = T.MATA; SELECT NOMEA ALUNO, NOMEP PROFESSOR, TITULO FROM PROFESSOR P, ALUNO A, TCC T WHERE P.MATP = A.MATP AND A.MATA = T.MATA; SELECT NOMEP, NOMEA, TITULO FROM PROFESSOR P, ALUNO A, TCC T WHERE P.MATP = A.MATP AND A.MATA = T.MATA; SELECT NOMEA ALUNO, NOMEP PROFESSOR, TITULO "TÍTULO" FROM PROFESSOR P, ALUNO A, TCC T WHERE P.MATP = A.MATP AND A.MATA = T.MATA; 8a Questão Dentre as opções a seguir, qual não é uma função de grupo? SUM(x) CONT(*) AVG (x) MAX(x) MED(X) 1a Questão Considerea relação: FUNCIONARIO (matrícula, cargo, salario, admissao) A consulta SQL que mostra média dos salários dos funcionários é: SELECT AVG(SALARIO) FROM FUNCIONARIO; Nenhuma das respostas acima. SELECT SALARIO FROM FUNCIONARIO AVG; SELECT SUM(SALARIO) FROM FUNCIONARIO; SELECT MEDIA(SALARIO) FROM FUNCIONARIO; 2a Questão Em uma instrução SQL, para manipular dados retornados de funções agregadoras, utiliza-se a cláusula UNIQUE OUT HAVING GROUP IN SHOW ORDER BY 3a Questão Observe a tabela empregado: Qual será o resultado se executarmos a consulta abaixo: Niterói, Rio de Janeiro, Santos Niterói, Rio de Janeiro, Santos, Santos, São Paulo Niterói, Rio de Janeiro, Santos, São Paulo São Paulo, Santos, Rio de Janeiro, Niterói São Paulo, Santos, Santos, Rio de Janeiro, Niterói 4a Questão O esquema de banco de dados apresentado abaixo faz parte de um banco de dados criado a partir de um conjunto de dados públicos de captura de tubarões entre os anos de 2001 e 2013 na costa da Austrália. Os dados podem ser baixados no endereço: https://data.qld.gov.au/dataset/shark-control-program-shark-catch-statistics/resource/5c6be990-3938-4125-8cca-dac0cd734263 Características do esquema: Chave primária sublinhada e chave estrangeira em itálico. Seguem algumas tabelas do Esquema: Espécie (IDEspécie, IDOrdem. Nome_Científico, TamMaior, TamMenor, TamMédio) Tubarão (IDTubarão, IDEspécie, Comprimento, Sexo) Captura (NumCaptura, IDTubarão, IDLocal, Data, TempAgua) Assinale a alternativa abaixo que retorna a média de comprimento dos tubarões e a temperatura mínima e máxima da água agrupadas pelo nome científico da Espécie: SELECT Nome, AVG(Comprimento), MIN(TempAgua), MAX(TempAgua) FROM ESPÉCIE E, TUBARÃO T, CAPTURA C WHERE E.IDEspecie = T.IDEspecie AND T.IDTubarão = C.IDTubarão GROUP BY (Nome_Científico); SELECT Nome_Científico, AVG(Comprimento), MIN(TempAgua), MAX(TempAgua) FROM ESPÉCIE E, TUBARÃO T, CAPTURA C WHERE E.IDEspecie = T.IDEspecie AND T.IDTubarão = C.IDTubarão GROUP BY (Nome_Científico); SELECT IDEspecie, AVG(Comprimento), MAX(TempAgua), MIN(TempAgua) FROM ESPÉCIE E, TUBARÃO T, CAPTURA C WHERE E.IDEspecie = T.IDEspecie AND T.IDTubarão = C.IDTubarão GROUP BY (Nome_Científico); SELECT Nome_Científico, SUM(Comprimento), MIN(TempAgua), MAX(TempAgua) FROM ESPÉCIE E, TUBARÃO T, CAPTURA C WHERE E.IDEspecie = T.IDEspecie AND T.IDTubarão = C.IDTubarão GROUP BY (Nome); SELECT Nome_Científico, SUM(Comprimento), MIN(TempAgua), MAX(TempAgua) FROM ESPÉCIE E, TUBARÃO T, CAPTURA C WHERE E.IDEspecie = T.IDEspecie AND T.IDTubarão = C.IDTubarão GROUP BY (Nome_Científico); 5a Questão O gestor de um sistema de vendas solicita o preço médio dos produtos eletrônicos, que não está disponível na interface WEB do sistema. Para isso, que função SQL pode ser utilizada no SELECT para obter esse valor do banco de dados? VAR. AVG. VARP MIN. MAX. 6a Questão Considerando as tabelas descritas a seguir e a legenda: PK - chave primária / FK - chave estrangeira. 1 - ALUNO (matricula,nome,especializacao,nivel,idade), onde matricula é a PK; 2 - TURMA (nome_turma,horario,sala), onde nome_turma é a PK; 3 - MATRICULA (numero_aluno,nome_turma,numero_posicao), onde numero_aluno e nome_turma formam a PK, numero_aluno é FK referenciando ALUNO e nome_turma é FK referenciando TURMA. Marque a opção que contém o código em SQL para exibir o(s) nome(s) da(s) turma(s) que tem mais de 20 alunos matriculados: SELECT t.nome_turma,count(*) FROM TURMA t INNER JOIN MATRICULA m ON t.nome_turma = m.nome_turma HAVING count(*) > 20 GROUP BY t.nome_turma SELECT nome_turma,count(*) FROM TURMA t INNER JOIN MATRICULA m ON t.nome_turma = m.nome_turma WHERE count(*) > 20 SELECT t.nome_turma,count(*) FROM TURMA t INNER JOIN MATRICULA m ON t.nome_turma = m.nome_turma GROUP BY 1 HAVING count(*) > 20 SELECT * FROM TURMA t,MATRICULA m ON t.nome_turma = m.nome_turma WHERE count(*) > 20 SELECT nome_turma,count(*) FROM TURMA t INNER JOIN MATRICULA m ON t.nome_turma = m.nome_turma GROUP BY nome_turma WHERE count(*) > 20 5a Questão Em SQL, para contar linhas usamos: AVG SELECT GROUP BY SUM COUNT 6a Questão oito linhas. seis linhas. cinco linhas. quinze linhas. dez linhas. 7a Questão SELECT PNOME || || SNOME CLIENTE, VALORDIARIA, PERIODO FROM CLIENTE NATURAL JOIN ALUGUEL WHERE PERIODO > (SELECT AVG(VALORDIARIA) FROM ALUGUEL); SELECT PNOME || || SNOME CLIENTE, VALORDIARIA, PERIODO FROM CLIENTE NATURAL JOIN ALUGUEL WHERE PERIODO > (SELECT AVG(PERIODO) FROM ALUGUEL); SELECT PNOME || || SNOME CLIENTE, VALORDIARIA, PERIODO FROM CLIENTE NATURAL JOIN ALUGUEL WHERE VALORDIARIA > (SELECT AVG(VALORDIARIA) FROM ALUGUEL); SELECT PNOME || || SNOME CLIENTE, VALORDIARIA, PERIODO FROM CLIENTE NATURAL JOIN ALUGUEL WHERE VALORDIARIA > (SELECT AVG(PERIODO) FROM ALUGUEL); SELECT PNOME || || SNOME CLIENTE, VALORDIARIA, PERIODO FROM CLIENTE NATURAL JOIN ALUGUEL WHERE VALORDIARIA*PERIODO > (SELECT AVG(VALORDIARIA) FROM ALUGUEL); 8a Questão Qual dos tipos de sub-consulta que faz referência a uma coluna da tabela da consulta externa? Sub-Consulta Correlata Sub-Consulta Simple Sub-Consulta Multi-Valorada Sub-Consulta Principal Sub-Consulta Multi-Linhas 9a Questão Qual das alternativas a seguir apresenta a sintaxe correta do comando SELECT aplicando as cláusulas GROUP BY e HAVING? SELECT FROM WHERE GROUP BY HAVING SELECT HAVING FROM WHERE GROUP BY SELECT HAVING FROM WHERE GROUP BY SELECT FROM HAVING GROUP BY WHERE SELECT FROM GROUP BY WHERE HAVING 10a Questão O esquema de banco de dados apresentado abaixo faz parte de um banco de dados criado a partir de um conjunto de dados públicos de captura de tubarões entre os anos de 2001 e 2013 na costa da Austrália. Os dados podem ser baixados no endereço: https://data.qld.gov.au/dataset/shark-control-program-shark-catch-statistics/resource/5c6be990-3938-4125-8cca-dac0cd734263 Características do esquema: Chave primária sublinhada e chave estrangeira em itálico. Seguem algumas tabelas do Esquema: Nome (IDNome, IDEspécie, NomePopular) Tubarão (IDTubarão, IDEspécie, Comprimento, Sexo) Captura (NumCaptura, IDTubarão, IDLocal, Data, TempAgua) Local (IDLocal, CodArea, NomeLocal) Area (CodArea, NomeArea) Deseja-se consultar a quantidade de tubarões do sexo feminino que foram capturados entre os anos de 2002 e 2013. Assinale a opção abaixo que realiza esta consulta: SELECT COUNT (*) QTD FROM TUBARÃO T, CAPTURA C WHERE C.IDTUBARÃO = T.IDTUBARÃO AND SEXO = F AND DATA BETWEEN 2002 AND 2013; SELECT COUNT (TUBARÃO) QTD FROM TUBARÃO T, CAPTURA C WHERE C.IDTUBARÃO = T.IDTUBARÃO AND SEXO = F AND DATA BETWEEN 01/01/2002 AND 31/12/2013; SELECT COUNT (*) QTD FROM TUBARÃO T, CAPTURA C WHERE C.IDTUBARÃO = T.IDTUBARÃO AND SEXO = F AND DATA BETWEEN 01/01/2002 AND 31/12/2013; SELECT COUNT (tubarão) QTD FROM TUBARÃO T, CAPTURA C WHERE C.IDTUBARÃO = T.IDTUBARÃO AND SEXO = F AND DATA BETWEEN 2002 AND 2013; SELECT COUNT (*) QTD FROM TUBARÃO, CAPTURA WHERE SEXO = F AND DATA BETWEEN 01/01/2002 AND 31/12/2013; 5a Questão De acordo com o modelo de dados definido pelas tabelas a seguir, indique a instrução SQL adequada para: Apresentar o menor salário pago aos Empregados Agrupados por Departamento. SELECT MINUS(SALARIO) FROM EMPREGADO GROUP BY ID_DEPTO; SELECT MIN(SALARIO) FROM EMPREGADO GROUP BY ID_DEPTO; SELECT MIN(SALARIO) FROM EMPREGADO GROUP BY ID; SELECT MINIMO(SALARIO) FROM EMPREGADO GROUP BY ID_DEPTO; SELECT MINUS(SALARIO) FROM EMPREGADO GROUP BY ID; 6a Questão Considere o seguinte comando SQL: SELECT D.NM_DEPARTAMENTO,SUM(P.SALARIO) FROM TB_DEPARTAMENTO D INNER JOIN TB_PROFESSOR P ON (D.COD_DEPARTAMENTO = P.COD_DEPARTAMENTO) É CORRETO afirmar: A consulta irá retornar o mesmo número de linhas da tabela TB_PROFESSOR. A junção INNER JOIN não pode ser utilizada com a função de agregação SUM( ). soma total. A sintaxe do comando está incorreta, pois deveria apresentar a cláusula GROUP BY. Se existir uma linha na tabela TB_PROFESSOR com valor NULO (NULL) para o atributo SALARIO, o resultado da consulta também será um valor NULO (NULL). 7a Questão O esquema de banco de dados apresentado abaixo faz parte de um banco de dados criado a partir de um conjunto de dados públicos de captura de tubarões entre os anos de 2001 e 2013 na costa da Austrália. Os dados podem ser baixados no endereço: https://data.qld.gov.au/dataset/shark-control-program-shark-catch-statistics/resource/5c6be990-3938-4125-8cca- dac0cd734263 Características do esquema: Chave primária sublinhada e chave estrangeira em itálico. Seguem algumas tabelas do Esquema: Nome (IDNome, IDEspécie, NomePopular) Tubarão (IDTubarão, IDEspécie, Comprimento, Sexo) Captura (NumCaptura, IDTubarão, IDLocal, Data, TempAgua) Local (IDLocal, CodArea, NomeLocal) Area (CodArea, NomeArea) Sabendo-se que a tabela nome contém nomes populares de tubarões e deseja-se listar o comprimento e o sexo de todos os tubarões que tem nome popular terminado com a letra k. Assinale a alternativa abaixo que retorna corretamente a consulta desejada: SELECT Comprimento, Sexo FROM Tubarão T, Espécie E, Nome N WHERE T.IDEspecie = E.IDEspecie AND N.IDEspécie = E.IDEspecie AND UPPER (NomePopular) like _k; SELECT * FROM Tubarão T, Espécie E, Nome N WHERE T.IDEspecie = E.IDEspecie AND N.IDEspécie = E.IDEspecie AND NomePopular like %k; SELECT Comprimento, Sexo FROM Tubarão T, Espécie E, Nome N WHERE T.IDEspecie = E.IDEspecie AND N.IDEspécie = E.IDEspecie AND NomePopular like %k; SELECT Comprimento, Sexo FROM Tubarão T, Espécie E, Nome N WHERE T.IDEspecie = E.IDEspecie AND N.IDEspécie = E.IDEspecie AND UPPER (NomePopular) like %k%; SELECT Comprimento, Sexo FROM Tubarão T, Espécie E, Nome N WHERE T.IDEspecie = N.IDEspécie AND NomePopular like %k; 8a Questão SELECT * FROM TipoImovel T INNER JOIN Imovel I ON T.CODTIPOIMOVEL = I.CODTIPOIMOVEL SELECT * FROM TipoImovel T FULL JOIN Imovel I ON T.CODTIPOIMOVEL = I.CODTIPOIMOVEL SELECT * FROM TipoImovel T CROSS JOIN Imovel I ON T.CODTIPOIMOVEL = I.CODTIPOIMOVEL SELECT * FROM TipoImovel T RIGHT JOIN Imovel I ON T.CODTIPOIMOVEL = I.CODTIPOIMOVEL SELECT * FROM TipoImovel T LEFT JOIN Imovel I ON T.CODTIPOIMOVEL = I.CODTIPOIMOVEL 9a Questão O comando SELECT FROM corresponde a seguinte operação da álgebra relacional: Projeção Seleção Junção União Interseção 10a Questão A cláusula having, quando usada, estabelece uma condição sobre uma agregação obtida de: group by em uma expressão select. sum em uma expressão create. order by em uma expressão select. group by em uma cláusula order by. Reorganiza-se automaticamente com pequenas mudanças locais. 9a Questão SELECT * FROM Imovel WHERE NumVagasGaragem IN(1,2,4) ORDER BY Tamanho SELECT * FROM Imovel WHERE NumVagasGaragem IN(1,2,4) ORDER BY Tamanho DESC SELECT * FROM Imovel WHERE NumBanheiros BETWEEN 2 AND 4 ORDER BY Tamanho SELECT * FROM Imovel WHERE NumQuartos BETWEEN 2 AND 4 ORDER BY Tamanho DESC SELECT * FROM Imovel WHERE NumBanheiros BETWEEN 2 AND 4 ORDER BY Tamanho DESC 10a Questão A cláusula having, quando usada, estabelece uma condição sobre uma agregação obtida de: order by em uma expressão select. group by em uma cláusula order by. sum em uma expressão create. Reorganiza-se automaticamente com pequenas mudanças locais. group by em uma expressão select. 7a Questão SELECT NOMETIPOIMOVEL, TAMANHO, NUMQUARTOS || - || NUMBANHEIROS "NUMERO QUARTOS E BANHEIROS" FROM IMOVEL I, TIPOIMOVEL T WHERE I.CODTIPOIMOVEL = T.CODTIPOIMOVEL AND NOMETIPOIMOVEL = APARTAMENTO PADRÃO; SELECT NOMETIPOIMOVEL, TAMANHO, NUMQUARTOS || - || NUMBANHEIROS "NUMERO QUARTOS E BANHEIROS" FROM IMOVEL , TIPOIMOVEL WHERE NOMETIPOIMOVEL = APARTAMENTO PADRÃO; SELECT NOMETIPOIMOVEL, TAMANHO, NUMQUARTOS || - || NUMBANHEIROS "NUMERO QUARTOS E BANHEIROS" FROM IMOVEL I, TIPOIMOVEL T WHERE I.CODTIPOIMOVEL = T.CODTIPOIMOVEL AND UPPER(NOMETIPOIMOVEL) = APARTAMENTO PADRÃO; SELECT NOMETIPOIMOVEL, TAMANHO, NUMQUARTOS , NUMBANHEIROS "NUMERO QUARTOS E BANHEIROS" FROM IMOVEL I, TIPOIMOVEL T WHERE I.CODTIPOIMOVEL = T.CODTIPOIMOVEL; SELECT NOMETIPOIMOVEL, TAMANHO, NUMQUARTOS "NUMERO QUARTOS E BANHEIROS", NUMBANHEIROS FROM IMOVEL , TIPOIMOVEL WHERE UPPER(NOMETIPOIMOVEL) = APARTAMENTO PADRÃO; 4a Questão O operador que possibilita a seleção de uma faixa de valores sem a necessidade do uso dos operadores >=, <= e AND é: HAVING IN LIKE GROUP BY BETWEEN
Compartilhar