Baixe prova redes e BD Oracle e outras Provas em PDF para Redes de Computadores, somente na Docsity!
Teste: DP Database Programming with SQL Exame
Intermediário
Verifique as suas respostas, o feedback e a pontuação das perguntas abaixo. Um asterisco (*) indica uma resposta correta.
Section 1
(Responder a todas as perguntas desta secção)
- Que comando é usado para adicionar linhas a uma tabela? ADD INSERT (*) ADD_ROW NEW_ROW Correto (1/1) Pontos
- Como todos os computadores no mundo falam as mesmas linguagens, você só precisa aprender uma linguagem de programação: Oracle SQL. Verdadeiro ou falso? True False (*) Correto. (1/1) Pontos
- As colunas em uma tabela de banco de dados contêm dados com o(a) mesmo(a) _________: Campo Tipo (*) Linha Chave Correto (1/1) Pontos
- Em uma cláusula SELECT, qual é o resultado de 2 + 3 * 2? 10 13 8 (*) 6 Correto. (1/1) Pontos
- A instrução SQL SELECT é capaz de: Seleção e proteção Seleção e projeção (*) Projeção e atualização Nenhuma das opções acima Correto
Section 2
(Responder a todas as perguntas desta secção)
- Qual consulta daria este resultado?
LAST_NAME FIRST_NAME DEPARTMENT_ID King Steven 90 SELECT last_name, first_name, department_id FROM employees WHERE last_name LIKE 'KING'; SELECT last_name, first_name, department_id FROM employees WHERE last_name LIKE 'k%'; SELECT last_name, first_name, department_id FROM employees WHERE last_name = 'King'; (*) SELECT last_name, first_name, department_id FROM employees C WHERE last_name = 'KING; Correto (1/1) Pontos
- Você deseja recuperar uma lista de clientes cujos sobrenomes começam com as letras 'Fr'. Que símbolo deve ser incluído na cláusula WHERE da instrução SELECT para obter o resultado desejado? ~ % (*)
Correto. (1/1) Pontos
- Qual destas cláusulas WHERE não selecionaria o número 10? WHERE hours IN (8,9,10) WHERE hours <= 10 WHERE hours BETWEEN 10 AND 20 WHERE hours <>10 (*) Correto (1/1) Pontos
- Ao usar o operador "LIKE", os símbolos % e _ podem ser usados para fazer uma correspondência de padrão, uma pesquisa com curingas. Verdadeiro ou falso? True (*) False Correto (1/1) Pontos
- Qual destas opções NÃO ESTÁ SENDO EXECUTADA nesta instrução SQL? SELECT first_name || ‘ ‘ || last_name "Name" FROM employees; Seleção de colunas da tabela de funcionários Inserção de espaço entre nome e sobrenome Concatenação de nome, nome do meio e sobrenome (*) Uso de um alias de coluna Incorreto. Consulte a Seção 2, Lição 1.
SELECT SUBSTR(product_id, 3, 2) FROM price WHERE manufacturer_id = 59604; (*) SELECT TRIM(product_id, -3, 2) FROM price WHERE manufacturer_id = 59604; SELECT LENGTH(product_id, 3, 2) FROM price WHERE manufacturer_id = 59604; SELECT SUBSTR(product_id, -1, 3) FROM price WHERE manufacturer_id = 59604; Correto (1/1) Pontos
- Você precisa exibir o número de caracteres no sobrenome de cada cliente. Que função deve ser usada? LPAD COUNT SUBSTR LENGTH (*) Incorreto. Consulte a Seção 4, Lição 1. (0/1) Pontos
- Quais destas funções podem ser usadas para manipular valores de colunas de número ou data, mas NÃO valores de colunas de caractere? (Escolha duas opções) (Escolha todas as respostas corretas) INSTR TRUNC () CONCAT ROUND () RPAD Correto (1/1) Pontos
- A tabela EMPLOYEES contém estas colunas: LAST_NAME VARCHAR2(20) FIRST_NAME VARCHAR2(20) HIRE_DATE DATE EVAL_MONTHS NUMBER(3) Avalie esta instrução SELECT: SELECT data_admissão + meses_aval FROM funcionários; Os valores retornados por esta instrução SELECT serão de que tipo de dados? DATETIME INTEGER NUMBER DATE (*)
Incorreto. Consulte a Seção 4, Lição 3. (0/1) Pontos
Section 5
(Responder a todas as perguntas desta secção)
- Qual destas opções é uma expressão condicional usada no SQL? WHERE CASE (*) NULLIF DESCRIBE Correto (1/1) Pontos
- Que afirmação é verdadeira sobre funções de grupo? COALESCE, mas não NVL e NVL2, podem ser usadas com funções de grupo para substituir valores nulos. NVL e COALESCE, mas não NVL2, podem ser usadas com funções de grupo para substituir valores nulos. NVL e NVL2, mas não COALESCE, podem ser usadas com funções de grupo para substituir valores nulos. NVL, NVL2 e COALESCE podem ser usadas com funções de grupo para substituir valores nulos. (*) Correto (1/1) Pontos
- Considere estes dados na tabela EMPLOYEES: (sobrenome, pct_comissão, id_gerente) DATA: King, nulo, nulo Kochhar, nulo, 100 Vargas, nulo, 124 Zlotkey, .2, 100 Qual é o resultado desta instrução? SELECT sobrenome, COALESCE(pct_comissão, id_gerente, -1) comm FROM funcionários ; King, - Kochhar, 100 Vargas, 124 Zlotkey, 100 King, - Kochhar, 100 Vargas, 124 Zlotkey, .2 (*) Falha na instrução King, nulo Kochhar, 100 Vargas, 124 Zlotkey,. Correto (1/1) Pontos
EMPLOYEE_ID NOT NULL NUMBER (6) FIRST_NAME VARCHAR (20) LAST_NAME NOT NULL VARCHAR2(25) EMAIL NOT NULL VARCHAR (25) PHONE_NUMBER VARCHAR (20) HIRE_DATE NOT NULL DATE JOB_ID NOT NULL VARCHAR (10) SALARY NUMBER (8,2) COMMISSION_PC T NUMBER (2,2) MANAGER_ID NUMBER (6) DEPARTMENT_ID NUMBER (4) Tabela JOBS: Name Null? Type JOB_ID NOT NULL VARCHAR (10) JOB_TITLE NOT NULL VARCHAR (35) MIN_SALARY NUMBER (6) MAX_SALAR Y NUMBER (6) SELECT funcionários.nome, funcionários.sobrenome, funcionários.id_cargo, cargos.salário_mín, cargos.salário_máx FROM funcionários NATURAL JOIN cargos ; SELECT nome, sobrenome, id_cargo, salário_mín, salário_máx FROM funcionários NATURAL JOIN cargos; (*) SELECT funcionários.nome, funcionários.sobrenome, funcionários.id_cargo, cargos.salário_mín, cargos.salário_máx FROM funcionários NATURAL JOIN cargos USING (id_cargo); SELECT funcionários.nome, funcionários.sobrenome, funcionários.id_cargo, cargos.salário_mín, cargos.salário_máx FROM funcionários NATURAL JOIN cargos ON (funcionários.cargo = cargos.cargo); SELECT nome, sobrenome, id_cargo, salário_mín, salário_máx FROM funcionários FULL JOIN cargos (id_cargo); Correto (1/1) Pontos
- Que outro nome existe para junção simples ou junção interna? Equijunção (*) Autojunção Junção externa Não-equijunção
Correto (1/1) Pontos
- Qual destas afirmações é a descrição mais simples de uma não-equijunção? Uma condição de junção que não é igual a outras junções. Uma condição de junção com o sinal de mais (+) à esquerda. Uma condição de junção contendo algo diferente de um operador de igualdade. (*) Uma junção que junta uma tabela a si própria. Correto
- Consultas Hierárquicas podem ser de Cima para Baixo e de Baixo para Cima. Verdadeiro ou falso? True (*) False Correto (1/1) Pontos
- Consultas Hierárquicas DEVEM usar a pseudocoluna LEVEL. Verdadeiro ou falso? True False (*) Correto (1/1) Pontos
Section 7
(Responder a todas as perguntas desta secção)
- Pediram para você criar um relatório que liste todos os clientes corporativos e todos os pedidos que eles fizeram. Os clientes devem ser listados em ordem alfabética, começando pela letra 'A', e seus respectivos pedidos devem ser classificados do valor maior para o menor. Qual destas instruções deve ser executada? SELECT c.idcliente, c.nomeempresa, o.datapedido, o. idcliente, o.valor FROM clientes c, pedidos o WHERE c.idcliente = o.idcliente ORDER BY valor DESC, nomeempresa; SELECT c.idcliente, c.nomeempresa, o.datapedido, o. idcliente, o.valor FROM clientes c, pedidos o WHERE c.idcliente = o.idcliente ORDER BY nomeempresa ASC, valor ASC; SELECT c.idcliente, c.nomeempresa, o.datapedido, o. idcliente, o.valor FROM clientes c, pedidos o WHERE c.idcliente = o.idcliente ORDER BY nomeempresa, valor; SELECT c.idcliente, c.nomeempresa, o.datapedido, o. idcliente, o.valor FROM clientes c, pedidos o WHERE c.idcliente = o.idcliente ORDER BY nomeempresa, valor DESC; (*) Correto (1/1) Pontos
- Você precisa fornecer uma lista dos nomes e sobrenomes de todos os funcionários do Departamento de Vendas que ganharam bônus e cujas vendas superaram $50,000. O presidente da empresa gostaria de ver as vendas listadas com os valores mais altos primeiro. A tabela EMPLOYEES e a tabela SALES_DEPT contêm estas colunas:
Você precisa exibir o número de funcionários cujo salário supera $50,000. Que instrução SELECT seria usada? SELECT * FROM funcionários WHERE salário > 50000; SELECT COUNT() FROM funcionários WHERE salário < 50000; SELECT * FROM funcionários WHERE salário < 50000; SELECT COUNT() FROM funcionários WHERE salário > 50000; () SELECT COUNT() FROM funcionários WHERE salário > 50000 GROUP BY id_funcionário, sobrenome, nome, salário, id_departamento; Correto (1/1) Pontos
- A tabela PRODUCTS contém estas colunas: PROD_ID NUMBER(4) PROD_NAME VARCHAR2(30) PROD_CAT VARCHAR2(30) PROD_PRICE NUMBER(3) PROD_QTY NUMBER(4) Esta instrução é executada: SELECT AVG(preço_prod, qtd_prod) FROM produtos; O que acontece quando esta instrução é executada? São retornados tanto o preço médio como a quantidade média dos produtos. Ocorre um erro. (*) É retornada apenas a quantidade média dos produtos. A média dos valores nas colunas PROD_PRICE e PROD_QTY é calculada em conjunto. Correto (1/1) Pontos
- Que função de grupo você usaria para exibir o salário mais baixo na coluna SALES_AMOUNT? MIN (*) MAX AVG COUNT Correto (1/1) Pontos
Section 9
(Responder a todas as perguntas desta secção)
- Examine esta instrução: SELECT id_departamento, id_gerente, id_cargo, SUM(salário) FROM funcionários ORDER BY ROLLUP(id_departamento; id_gerente Que dados extras serão gerados por esta consulta? Subtotais para id_departamento e totais gerais para salário Subtotais para id_departamento, id_cargo e totais gerais para salário Subtotais para id_departamento, id_cargo, id_gerente e totais gerais para salário A instrução falhará. (*) Incorreto. Consulte a Seção 9, Lição 2. (0/1) Pontos
- Examine esta instrução: SELECT id_departamento, id_gerente, id_cargo, SUM(salário) FROM funcionários GROUP BY GROUPING SETS((id_departamento, id_gerente), (id_departamento, id_cargo)) Que dados serão gerados por esta consulta? A soma dos salários para (id_departamento, id_cargo) e (id_departamento, id_gerente) (*) A soma dos salários para (id_departamento, id_cargo, id_gerente) Subtotais para (id_cargo, id_gerente) A instrução falhará. Incorreto. Consulte a Seção 9, Lição 2.
Section 9
(Responder a todas as perguntas desta secção)
- Qual é a ordem correta de cláusulas em uma instrução SELECT? SELECT FROM WHERE GROUP BY HAVING ORDER BY (*) SELECT FROM WHERE ORDER BY GROUP BY HAVING SELECT FROM HAVING GROUP BY WHERE ORDER BY SELECT FROM WHERE HAVING
(1/1) Pontos
- A diferença entre UNION e UNION ALL é: UNION ALL é mais semelhante a NATURAL JOIN. UNION removerá duplicatas; UNION ALL retorna todas as linhas de todas as consultas, incluindo as duplicatas. (*) Não há diferença; você recebe exatamente o mesmo resultado de ambos. UNION é sinônimo de UNION ALL. Correto (1/1) Pontos
Section 10
(Responder a todas as perguntas desta secção)
- Se você usar o operador de igualdade (=) com uma subconsulta, quantos valores a subconsulta poderá retornar? Somente um (*) Até dois Ilimitado Até cinco Correto
- Os aliases de tabela devem ser usados para escrever subconsultas correlacionadas. (Verdadeiro ou falso?) True False (*) Correto (1/1) Pontos
- Você precisa criar uma instrução SELECT que contenha uma subconsulta de várias linhas. Que operador(es) de comparação você pode usar? =, < e > BETWEEN…AND… LIKE IN, ANY e ALL (*) Incorreto. Consulte a Seção 10, Lição 3. (0/1) Pontos
- Qual destas opções é um motivo válido para a consulta abaixo não ser executada com sucesso? SELECT employee_id, last_name, salary FROM employees WHERE department_id = (SELECT department_id FROM employees WHERE last_name like '%u%'); O operador "maior que" não é válido. Foi usado um operador de um único valor em vez de um operador de diversos valores. (*) A segunda subconsulta está à direita, e não à esquerda do operador. A primeira subconsulta não está entre parênteses. Correto (1/1) Pontos
- Qual destas opções melhor descreve o significado do operador ANY? Igual a cada membro na lista Valor de comparação para o primeiro valor retornado pela subconsulta Valor de comparação para cada valor retornado pela subconsulta (*) Igual a qualquer membro na lista Correto (1/1) Pontos
- As subconsultas estão limitadas a quatro por transação SQL. Verdadeiro ou falso? True False (*) Correto