Questões de Concurso
Sobre sql em banco de dados
Foram encontradas 4.619 questões

Observe o resultado de uma consulta SQL.

A consulta que expressa o resultado acima é:
C1) SELECT Nome FROM X WHERE Chave IN (SELECT Chave FROM Y)
(C2) SELECT Nome FROM X WHERE EXISTS (SELECT Y.Chave FROM Y WHERE X.Chave = Y.Chave)
Suponha que as relações X e Y possuem 200.000 e 100.000 tuplas, respectivamente. Na comparação dos tempos de processamento de ambas as consultas, constata-se que

Os objetivos dos gatilhos tg1 e tg2 são sinalizar a ocorrência de erro na inserção de novos empregados e na atualização de empregados existentes quando, respectivamente, o valor do salário
SELECT X.Nome, Y.Nome FROM E X JOIN E Y ON X.CPFdoSupervisor = Y.CPF
Essa expressão refere-se à seguinte consulta ao banco de dados EMPRESA: para os empregados que possuem supervisor direto, “quais os nomes do
aluno(numero_aluno, nome, curso)
disciplina(numero_disciplina, nome_disciplina, curso)
turma(codigo, numero_disciplina, semestre, ano, professor)
historico_escolar(numero_aluno, codigo, nota)
Para o esquema apresentado, a consulta SQL que recupera os nomes e cursos de todos os alunos que não têm uma nota A em qualquer uma das disciplinas é:

No MS SQL Server, a execução do comando SQL
Select nome
From aluno
where nome collate latin1_general_cs_ai
like 'joão%'
produz como resultado
CREATE TRIGGER < nome do trigger>
< tempo de ação do trigger>
< evento para acionar o trigger>
ON < nome da tabela>
< ação>
O parâmetro < tempo de ação do trigger > possui as seguintes opções válidas:
SELECT Comando (Qtde)
FROM Tab1
O valor de Comando para que a consulta tenha como resultado o maior valor da coluna Qtde é:
Tal comando SQL deve ser iniciado com
CREATE TABLE PRODUTO (
COD NUMBER(5) NOT NULL,
DESCRICAO VARCHAR2(100) NOT NULL,
PRECO NUMBER(8,2) NOT NULL,
QTD_ESTOQUE NUMBER(5) ,
TIPO NUMBER(1) NOT NULL,
CONSTRAINT PRODUTO_PK PRIMARY KEY (COD))
CREATE TABLE ITEM (
NUM_SERIE NUMBER(7) NOT NULL,
COR VARCHAR2(20) NOT NULL,
VOLTAGEM NUMBER(5) NOT NULL,
COD_PROD NUMBER(5) NOT NULL,
CONSTRAINT ITEM_PK PRIMARY KEY (NUM_SERIE),
CONSTRAINT ITEM_FK FOREIGN KEY (COD_PROD)
REFERENCES PRODUTO (COD))
Observações:
• A empresa comercializa produtos controlados por quantidade (por exemplo, caixa de sabão em pó, pacote de biscoito e lata de extrato de tomate) e produtos controlados por unidade (por exemplo, televisor, máquina de lavar roupa e liquidificador).
• A quantidade em estoque de um produto controlado por quantidade (TIPO=1) é obtida diretamente da coluna QTD_ESTOQUE.
• A quantidade em estoque de um produto controlado por unidade (TIPO=2) NÃO pode ser obtida diretamente da coluna QTD_ESTOQUE, pois, para esse tipo de produto, esta coluna irá conter o valor NULL.
• Cada linha da tabela ITEM contém informações sobre um item existente no estoque da empresa relativo a um tipo de produto controlado por unidade.
Qual comando SQL irá atualizar corretamente a coluna QTD_ESTOQUE com a quantidade de itens em estoque relativa a cada um dos produtos do tipo 2 comercializados pelo supermercado?
CREATE TABLE PRODUTO (
COD NUMBER(5) NOT NULL,
DESCRICAO VARCHAR2(100) NOT NULL,
PRECO NUMBER(8,2) NOT NULL,
QTD_ESTOQUE NUMBER(5) ,
TIPO NUMBER(1) NOT NULL,
CONSTRAINT PRODUTO_PK PRIMARY KEY (COD))
CREATE TABLE ITEM (
NUM_SERIE NUMBER(7) NOT NULL,
COR VARCHAR2(20) NOT NULL,
VOLTAGEM NUMBER(5) NOT NULL,
COD_PROD NUMBER(5) NOT NULL,
CONSTRAINT ITEM_PK PRIMARY KEY (NUM_SERIE),
CONSTRAINT ITEM_FK FOREIGN KEY (COD_PROD)
REFERENCES PRODUTO (COD))
Observações:
• A empresa comercializa produtos controlados por quantidade (por exemplo, caixa de sabão em pó, pacote de biscoito e lata de extrato de tomate) e produtos controlados por unidade (por exemplo, televisor, máquina de lavar roupa e liquidificador).
• A quantidade em estoque de um produto controlado por quantidade (TIPO=1) é obtida diretamente da coluna QTD_ESTOQUE.
• A quantidade em estoque de um produto controlado por unidade (TIPO=2) NÃO pode ser obtida diretamente da coluna QTD_ESTOQUE, pois, para esse tipo de produto, esta coluna irá conter o valor NULL.
• Cada linha da tabela ITEM contém informações sobre um item existente no estoque da empresa relativo a um tipo de produto controlado por unidade.
CREATE TABLE PRODUTO (
COD NUMBER(5) NOT NULL,
DESCRICAO VARCHAR2(100) NOT NULL,
PRECO NUMBER(8,2) NOT NULL,
QTD_ESTOQUE NUMBER(5) ,
TIPO NUMBER(1) NOT NULL,
CONSTRAINT PRODUTO_PK PRIMARY KEY (COD))
CREATE TABLE ITEM (
NUM_SERIE NUMBER(7) NOT NULL,
COR VARCHAR2(20) NOT NULL,
VOLTAGEM NUMBER(5) NOT NULL,
COD_PROD NUMBER(5) NOT NULL,
CONSTRAINT ITEM_PK PRIMARY KEY (NUM_SERIE),
CONSTRAINT ITEM_FK FOREIGN KEY (COD_PROD)
REFERENCES PRODUTO (COD))
Observações:
• A empresa comercializa produtos controlados por quantidade (por exemplo, caixa de sabão em pó, pacote de biscoito e lata de extrato de tomate) e produtos controlados por unidade (por exemplo, televisor, máquina de lavar roupa e liquidificador).
• A quantidade em estoque de um produto controlado por quantidade (TIPO=1) é obtida diretamente da coluna QTD_ESTOQUE.
• A quantidade em estoque de um produto controlado por unidade (TIPO=2) NÃO pode ser obtida diretamente da coluna QTD_ESTOQUE, pois, para esse tipo de produto, esta coluna irá conter o valor NULL.
• Cada linha da tabela ITEM contém informações sobre um item existente no estoque da empresa relativo a um tipo de produto controlado por unidade.
Departamento:
DepNo - int - primary key - not null
DNome - varchar(50) - not null
DLocal - varchar(40)
Funcionario:
FunNo - int - primary key - not null
DepNo - int - foreign key - not null
FNome - varchar(50) - not null
FCargo - varchar(40)
FSal - double
Ambas as tabelas possuem muitos registros cadastrados, que não incluem valores nulos. Considere as instruções SQL a seguir:
I. select funcionario.FunNo, funcionario.FNome, departamento.DNome from funcionario INNER JOIN departamento ON funcionario.DepNo = departamento.DepNo;
II. select funcionario.FunNo, funcionario.FNome, departamento.DNome from funcionario, departamento where funcionario.DepNo = departamento.DepNo;
III. select f.FunNo, f.FNome, d.DNome from (select departamento.DepNo, departamento.DNome from departamento) as d, funcionario as f where d.DepNo = f.DepNo;
IV. select DISTINCT f.FunNo, f.FNome, d.DNome from funcionario f, departamento d;
insert into departamento (DepNo, DNome) values(50,'Educação');
Ao fazer uma consulta na tabela, verificou-se que mesmo tendo sido especificado apenas a inclusão de valores nos campos DepNo e DNome, o campo DLocal recebeu o valor 'São Paulo'. Pode-se concluir que antes da digitação do comando insert, pode ter sido digitada a instrução: