Pular para o conteúdo principal

Questão de Arquitetura de Software — Banco de Dados — UFPR 2019

Arquitetura de SoftwareBanco de Dados
Código
qq560338
Banca
UFPR
Órgão
UFPR
Ano
2019
Nível
Superior
Cargo
Analista de Tecnologia da Informação
Os comandos DDL abaixo definem uma base de dados de uma livraria, contendo os clientes, os livros e as vendas.CREATE TABLE tb_cliente (id_cli INTEGER NOT NULL,nm_cli VARCHAR(50) NOT NULL,email_cli VARCHAR(100) NOT NULL,dn_cli DATE NOT NULL,CONSTRAINT cliente_pk PRIMARY KEY (id_cli));CREATE TABLE tb_livro (id_livro INTEGER NOT NULL,nome_livro VARCHAR(50) NOT NULL,autor_livro VARCHAR(50) NOT NULL,valor_livro REAL NOT NULL,CONSTRAINT livro_pk PRIMARY KEY(id_livro));CREATE TABLE tb_venda (id_cli INTEGER NOT NULL,id_livro INTEGER NOT NULL,data_compra DATE NOT NULL,qtde_compra INTEGER NOT NULL,CONSTRAINT cliente_fk FOREIGN KEY (id_cli)REFERENCES tb_cliente(id_cli),CONSTRAINT livro_fk FOREIGN KEY (id_livro)REFERENCES tb_livro(id_livro),CONSTRAINT cliente_livro_pk PRIMARY KEY (id_cli, id_livro));Qual consulta SQL apresenta o valor total de vendas por autor?
  1. ASELECT l.autor_livro, SUM(l.valor_livro*v.qtde_venda)FROM tb_venda vJOIN tb_livro l ON v.id_livro = l.id_livroJOIN tb_cliente c ON v.id_cli = c.id_cliGROUP BY l.autor_livroORDER BY l.autor_livro
  2. BSELECT l.autor_livro, l.valor_livroFROM tb_venda vJOIN tb_livro l ON v.id_livro = l.id_livroJOIN tb_cliente c ON v.id_cli = c.id_cliORDER BY l.autor_livro
  3. CSELECT l.autor_livro, SUM(l.valor_livro*v.qtde_venda)FROM tb_venda vGROUP BY l.autor_livroORDER BY l.autor_livro
  4. DSELECT c.nm_cli, SUM(l.valor_livro*v.qtde_venda)FROM tb_venda vJOIN tb_livro l ON v.id_livro = l.id_livroJOIN tb_cliente c ON v.id_cli = c.id_cliGROUP BY c.nm_cli
  5. ESELECT l.autor_livro, SUM(v.qtde_venda) FROM tb_venda vJOIN tb_livro l ON v.id_livro = l.id_livroJOIN tb_cliente c ON v.id_cli = c.id_cliGROUP BY l.autor_livroORDER BY l.autor_livro
Revelar gabarito e comentário

GabaritoA — SELECT l.autor_livro, SUM(l.valor_livro*v.qtde_venda) FROM tb_venda v JOIN tb_livro l ON v.id_livro = l.id_livro JOIN tb_cliente c ON v.id_cli = c.id_cli GROUP BY l.autor_livro ORDER BY l.autor_livro

Link permanente: /questoes/qq560338