Questões de Concurso
Comentadas sobre sql em banco de dados
Foram encontradas 3.247 questões
CREATE TABLE Livro (ISBN INT, Nome VARCHAR(40),Autor INT, Editora INT);
CREATE TABLE Autor (Codigo INT, NOME VARCHAR(40));
CREATE TABLE Editora (Codigo INT, Nome VARCHAR(40));
INSERT INTO Livro VALUES (12345, "Programas em C",1,1);
INSERT INTO Livro VALUES (67890, "Métodos Ágeis",1,2);
INSERT INTO Autor VALUES (1, "Manoel da Silva");
INSERT INTO Editora VALUES (1, "Editora Livros");
Note que os exemplos abaixo consideram que as linhas apresentadas acima já foram executadas.
CREATE TABLE MOTORISTA (
MATRICULA NUMBER(7,0) NOT NULL,
NOME VARCHAR2(50) NOT NULL,
CPF NUMBER(11,0) NOT NULL,
CNH VARCHAR2(15) NOT NULL,
CONSTRAINT MOTORISTA_PK PRIMARY KEY (MATRICULA),
CONSTRAINT MOTORISTA_UK1 UNIQUE (CPF),
CONSTRAINT MOTORISTA_UK2 UNIQUE (CNH))
CREATE TABLE LINHA (
NUMERO CHAR(5) NOT NULL,
ORIGEM VARCHAR2(50) NOT NULL,
DESTINO VARCHAR2(50) NOT NULL,
CONSTRAINT LINHA_PK PRIMARY KEY (NUMERO)
)
CREATE TABLE VIAGEM (
MAT_MOT NUMBER (7,0) NOT NULL,
NUM_LINHA CHAR(5) NOT NULL,
INICIO DATE NOT NULL,
FINAL DATE,
CONSTRAINT VIAGEM_PK PRIMARY KEY (MAT_MOT,NUM_LINHA,INICIO),
CONSTRAINT VIAGEM_FK1 FOREIGN KEY (MAT_MOT) REFERENCES MOTORISTA (MATRICULA),
CONSTRAINT VIAGEM_FK2 FOREIGN KEY (NUM_LINHA) REFERENCES LINHA (NUMERO))
• Para o cálculo da média de viagens, devem ser levados em conta apenas os dias em que o motorista realizou pelo menos uma viagem, ao invés dos 31 dias do mês de março.
• As viagens não finalizadas não devem ser levadas em conta.
• Apenas o início da viagem precisa ocorrer no mês de março de 2012.
• A função TO_CHAR(INICIO,’DD’) retorna o dia do mês (ex: 15).
Qual consulta permite exibir o CPF do motorista e o número médio de viagens diárias que cada um deles realizou no mês de março de 2012?
CREATE TABLE MOTORISTA (
MATRICULA NUMBER(7,0) NOT NULL,
NOME VARCHAR2(50) NOT NULL,
CPF NUMBER(11,0) NOT NULL,
CNH VARCHAR2(15) NOT NULL,
CONSTRAINT MOTORISTA_PK PRIMARY KEY (MATRICULA),
CONSTRAINT MOTORISTA_UK1 UNIQUE (CPF),
CONSTRAINT MOTORISTA_UK2 UNIQUE (CNH))
CREATE TABLE LINHA (
NUMERO CHAR(5) NOT NULL,
ORIGEM VARCHAR2(50) NOT NULL,
DESTINO VARCHAR2(50) NOT NULL,
CONSTRAINT LINHA_PK PRIMARY KEY (NUMERO)
)
CREATE TABLE VIAGEM (
MAT_MOT NUMBER (7,0) NOT NULL,
NUM_LINHA CHAR(5) NOT NULL,
INICIO DATE NOT NULL,
FINAL DATE,
CONSTRAINT VIAGEM_PK PRIMARY KEY (MAT_MOT,NUM_LINHA,INICIO),
CONSTRAINT VIAGEM_FK1 FOREIGN KEY (MAT_MOT) REFERENCES MOTORISTA (MATRICULA),
CONSTRAINT VIAGEM_FK2 FOREIGN KEY (NUM_LINHA) REFERENCES LINHA (NUMERO))
CREATE TABLE VALORES (ID INT NOT NULL PRIMARY KEY,VALOR INT);
INSERT INTO VALORES VALUES (1,5); INSERT INTO VALORES VALUES (1,6); INSERT INTO VALORES VALUES (NULL,7); INSERT INTO VALORES VALUES (2,1); INSERT INTO VALORES VALUES (2,8); INSERT INTO VALORES VALUES (3,9); INSERT INTO VALORES VALUES (NULL,10); SELECT COUNT(VALOR) FROM VALORES WHERE VALOR >= 5;
A consulta retornará o valor
CREATE TABLE nota (id INT PRIMARY KEY,data TEXT,valor REAL);
INSERT INTO nota SET id=1,data='01012012',valor=15.5;
INSERT INTO nota SET id=1,data='03022012',valor=11.5;
INSERT INTO nota SET id=2,data='01042012',valor=25.5;
INSERT INTO nota SET id=20,data='10062012',valor=12.5;
SELECT COUNT(*) FROM nota WHERE valor < 20;
O resultado para a consulta efetuada será:
CREATE TABLE livros (id INT, nome TEXT);
INSERT INTO livros VALUES(1,'livro 1');
INSERT INTO livros (2,'livro 2');
INSERT INTO livros SET id=3,nome='livro 3';
SELECT id FROM livros;
O resultado da consulta para a coluna id será
1. CREATE TABLE Persons (P_Id int NOT NULL AUTO_INCREMENT);
2. CREATE TABLE Persons (P_Id int PRIMARY KEY IDENTITY);
3. CREATE SEQUENCE seq_person
MINVALUE 1
START WITH 1
INCREMENT BY 1
CACHE 10
As sequências apresentadas referem-se respectivamente aos banco de dados:
CREATE TABLE Empregado (
Matricula char(5) PRIMARY KEY,
Nome varchar(30),
numDepto int
);
CREATE TABLE Departamento (
numDepto int UNIQUE,
nomeDepto varchar(30)
);
ALTER TABLE Empregado ADD CONSTRAINT fk_empregado_depto
FOREIGN KEY (numDepto) REFERENCES Departamento(numDepto);
INSERT INTO Departamento VALUES (1, ‘Vendas’);
INSERT INTO Departamento VALUES (2, ‘Engenharia’);
INSERT INTO Departamento VALUES (3, ‘Contabilidade’);
INSERT INTO Departamento VALUES (4, ‘RH’);
INSERT INTO Empregado VALUES (‘11111’, ‘Juliana’, 1);
INSERT INTO Empregado VALUES (‘22222’, ‘Gabriela’, 3);
INSERT INTO Empregado VALUES (‘33333’, ‘Francisco’, 3);
INSERT INTO Empregado VALUES (‘44444’, ‘Inácio’, 4);
INSERT INTO Empregado VALUES (‘55555’, ‘João’, 4);
INSERT INTO Empregado VALUES (‘66666’, ‘Vitor’, NULL);
SELECT *
FROM Empregado LEFT OUTER JOIN Departamento
ON Empregado.numDepto = Departamento.numDepto;
Qual a quantidade de registros retornados pela consulta mencionada?
CREATE TABLE Empregado (
Matricula char(5) PRIMARY KEY,
Nome varchar(30),
numDepto int
);
CREATE TABLE Departamento (
numDepto int UNIQUE,
nomeDepto varchar(30)
);
ALTER TABLE Empregado ADD CONSTRAINT fk_empregado_depto
FOREIGN KEY (numDepto) REFERENCES Departamento(numDepto);
INSERT INTO Departamento VALUES (1, ‘Vendas’);
INSERT INTO Departamento VALUES (2, ‘Engenharia’);
INSERT INTO Departamento VALUES (3, ‘Contabilidade’);
INSERT INTO Departamento VALUES (4, ‘RH’);
INSERT INTO Empregado VALUES (‘11111’, ‘Juliana’, 1);
INSERT INTO Empregado VALUES (‘22222’, ‘Gabriela’, 3);
INSERT INTO Empregado VALUES (‘33333’, ‘Francisco’, 3);
INSERT INTO Empregado VALUES (‘44444’, ‘Inácio’, 4);
INSERT INTO Empregado VALUES (‘55555’, ‘João’, 4);
INSERT INTO Empregado VALUES (‘66666’, ‘Vitor’, NULL);
select nome from empregado where numDepto > 2 and not numDepto is null order by matricula;
Qual alternativa abaixo NÃO é atendida por essa consulta SQL?