Questões de Concurso
Comentadas sobre sql em banco de dados
Foram encontradas 3.369 questões
1.000 registros;
5 colunas;
uma coluna intitulada “A" totalmente preenchida com valores nulos.
Pode-se concluir que o comando SQL
select *
from T1 x left join T2 y on x.A=y.A
produz um resultado que contém:
I.
select * from X
UNION ALL
select * from Y
II.
select * from X
INTERSECT
select * from Y
III.
select * from X
MINUS
select * from Y
Sabendo-se que os comandos I, II e III retornam, respectivamente, 9, 2 e 3 registros, e que as duas tabelas possuem chaves primárias, o número de registros presentes nas tabelas X e Y, respectivamente, é:
I.
select distinct x1.nome
from X x1
where exists
(select * from X x2
where x1.nome = x2.nome)
II.
select distinct x1.nome
from X x1, X x2
where x1.nome = x2.nome
III.
select distinct x1.nome
from X x1, X x2
where x1.nome <> x2.nome
Sabendo-se que é preciso produzir a lista de nomes que aparecem duas ou mais vezes na tabela X, está correto concluir sobre os comandos que:
Assinale a opção que apresenta uma sintaxe correta de comandos
SQL para consulta de dados.
Considere que a tabela já está criada, os dados iniciais já foram inseridos e o banco de dados a ser utilizado está aberto e funcionando em condições ideais.
Tabela DebTrab
NroProcesso Principal Juros FGTS Honor Periciais
111/15 25345.00 3801.75 7933.00 4755.00
777/15 125800.00 18870.00 57966.87 7543.00
333/15 8844.50 1326.67 4233.55 1781.00
555/15 327631.00 65526.20 104863.78 11523.00
444/15 5072.00 1014.40 895.14 700.00
SQL> DECLARE
2 bonus NUMBER(8,2);
3 id_func NUMBER(6) := 1005;
4 BEGIN
5 SELECT salario * 0.10 INTO bonus
6 FROM tab_funcionarios
7 WHERE id_funcionario = id_func;
8 END;
9 /
Sabendo-se que a tabela foi criada no Oracle 11g e que o banco de dados opera em condições ideais, o código
É possível executar uma função (function) como parte de uma instrução SELECT, porém não é possível passar como parâmetro para a função um valor de coluna retornado do SELECT.
Ao executar o comando de consulta a seguir, o resultado obtido será India.
select pa_nome from pais where pa_codigo =
(select max(pa_codigo) from pais)
Situação hipotética: Considere que a seguinte expressão SQL seja executada em um ambiente POSTGRES.
create table tbl_pessoa (
nome char(25),
data_nascimento date,
altura integer,
peso integer,
endereco char(25),
cidade char(25),
estado char(2));
create table tbl_empregado (
departamento char(25),
situacao integer,
gerente char(25),
cargo char(25),
salario money)
inherits (tbl_pessoa);
select * from tbl_empregado;
Assertiva: Nessa situação, o resultado obtido mostrará os campos apresentados a seguir.
nome
data_nascimento
altura
peso
endereco
cidade
estado
departamento
situacao
gerente
cargo
salario
Considere que, no projeto físico de um banco de dados de fornecedores, o seguinte esquema tenha sido criado:
CREATE TABLE FORNECEDOR (
CNPJ VARCHAR(14) NOT NULL,
NOME VARCHAR(50) NOT NULL,
PRIMARY KEY (CNPJ)
);
Nessa situação, o comando de inserção a seguir será executado sem erros quando submetido ao banco de dados citado, com os dois fornecedores sendo inseridos no esquema anteriormente apresentado.
INSERT INTO FORNECEDOR (CNPJ, NOME) VALUES
('12123123000112', 'FORNECEDOR 1'),
('12123123123000112', 'FORNECEDOR 2');
Uma operação DELETE do SQL não é realizada se sua chave primária for referida por chaves estrangeiras em registros de outras tabelas no banco de dados. Assim, a fim de garantir a existência de chaves primárias para cada chave estrangeira nos bancos de dados relacionais, o SQL não apresenta nenhuma cláusula ou opção adicional que permita tal operação ocorrer nessa situação.
Considerando a tabela aluno (id, curso, disciplina, notafinal, sexo) de um banco de dados relacional, o comando SQL que permite obter o nome da disciplina e a média das notas finais por disciplina apenas para os alunos do sexo igual a 'F' e para as disciplinas com média abaixo de 5 é o apresentado a seguir.
SELECT disciplina, AVG(notafinal) FROM aluno WHERE sexo= 'F' GROUP BY disciplina HAVING AVG (notafinal)<5
A operação relacional PRODUTO CARTESIANO (ou PRODUTO CRUZADO), representa uma operação binária de conjunto nas relações nas quais ela é aplicada e é usada para combinar as tuplas de duas relações de forma combinatória. Corresponde à formação de uma lista de tabelas na cláusula FROM, como exemplificado a seguir.
SELECT aluno.matricula, nota.valor FROM aluno, nota
Considere que uma tabela denominada PESSOA contenha informações do cpf, do nome e do sexo de uma pessoa. Considere, ainda, que essa tabela tenha sido criada e alimentada em um SGBD relacional e que os valores do campo sexo de todos os registros da tabela são 'M' ou 'F'. Nessa situação, quando são executados os comandos SQL formados fidedignamente a partir da interpretação das representações no formato de álgebra relacional presentes nos itens (i), (ii) e (iii) listados a seguir, esses comandos serão executados corretamente em SGBDs relacionais e seus resultados serão conjuntos de tuplas idênticas no número de linhas, de colunas, e de todos os valores nas linhas de resultado.
(i) R1 ← π cpf,nome,sexo (PESSOA)
(ii) R1 ← π cpf,nome,sexo (σ sexo='M' OR sexo='F' (PESSOA))
(iii) R1 ← (π cpf,nome,sexo (σ sexo='M' (PESSOA)) ∪ (π cpf,nome (σ sexo='F' (PESSOA))