Banco de dadosSql
- (FCC 2013)
Para responder às questões de números 58 e 59, utilize os comandos SQL abaixo.
CREATE TABLE times (id INTEGER, nome VARCHAR(20),cidade VARCHAR(20));
CREATE TABLE jogos (local VARCHAR(20), data VARCHAR(8), time1 INTEGER, time2 INTEGER, placar1 INTEGER, placar2 INTEGER);
INSERT INTO times VALUES(1, "santos fc", "santos");
INSERT INTO times VALUES(2, "palmeiras", "sao paulo");
INSERT INTO times VALUES(3, "guarani", "campinas");
INSERT INTO jogos VALUES("campinas", "20100504", 3, 1, 0, 2);
INSERT INTO jogos VALUES("santos", "20101220", 1, 2, 1, 1);
INSERT INTO jogos VALUES("campinas", "20110210",3,2,0,0);
Analise a impressão do resultado de uma querySQL efetuada após a execução dos comandos descritos (note que no exemplo as colunas estão separadas pelo símbolo | barra vertical).
campinas - guarani - 0 - 2 - santos fc
santos - santos fc - 1 - 1 - palmeiras
campinas - guarani - 0 - 0 - palmeiras
A query SQLcapaz de produzir este resultado é
A) SELECT local,(SELECT nome FROM times WHERE id = a.time1),placar1,placar2,(SELECT nome FROM times WHERE id = a.time2) FROM jogos a;
B) SELECT * FROM jogos a, times b WHERE a.local, b.nome CASE b.id = a.time1, a.placar1, a.placar2, b.nome CASE b.id = a.time2;
C) SELECT local, nome, placar1, placar2, nome FROM jogos INNER JOIN times;
D) SELECT a.local, b.nome, a.placar1, a.placar2, c.nome FROM jogos a, (SELECT nome FROM times WHERE id = a.time1) b, (SELECT nome FROM times WHERE id = a.time2) c;
E) SELECT local, CASE a.time1 = b.id THEN nome, placar1, placar2, CASE a.time2 = b.id THEN nome FROM jogos a, times b;
Próximo:
EXERCÍCIOS - Exercício 436
Vamos para o Anterior: Exercício 434
Tente Este: Exercício 274
Primeiro: Exercício 1
VOLTAR ao índice: Banco de dados