Questão FC372780
Considere duas tabelas em um banco de dados relacional de uma companhia de gás: uma tabela chamada Consumidor, que armazena informações sobre os clientes que consomem gás e outra t
Linguagem SQL
FCC · 2024
Considere duas tabelas em um banco de dados relacional de uma companhia de gás: uma tabela chamada Consumidor, que armazena informações sobre os clientes que consomem gás e outra tabela chamada OrdemServico, que contém informações sobre as ordens de serviços prestados pela companhia de gás para um dado cliente. A relação entre as tabelas é um para muitos, ou seja, uma dada ordem de serviço se refere a um único cliente e um cliente pode ter mais de um serviço prestado a ele. As tabelas estão normalizadas.
A tabela Consumidor tem nome_cons e endereço_cons e o identificador é codigo_cons. A tabela OrdemServico tem nome_serv e valor_serv e o identificador é codigo_serv. O codigo_cons é chave estrangeira em OrdemServico.
Para obter o nome e o endereço do consumidor e os serviços prestados a ele - nome do serviço e valor do serviço - usando o T-SQL em condições ideais e usando INNER JOIN, o código escrito foi
SELECT c.nome cons,
c.endereço_cons,
s.nome_serv,
s.valor_serv
FROM I .
INNER JOIN II c.codigo_cons III ;
Para o código estar correto, as lacunas I, II e III devem conter, respectivamente,
- consumidor c - ordemservico s ON - = s.codigo_cons
- consumidor c - ordemservico s WHERE - s.codigo_cons
- consumidor c - ordemservico s ON - = c.codigo_cons
- ordemservico s - consumidor c LIKE - s.codigo_cons
- ordemservico s - consumidor e WHERE - = c.codigo_cons
Mostrar resposta e comentário
Gabarito
A
Comentário do professor
FROM consumidor c INNER JOIN ordemservico s ON c.codigo_cons = s.codigo_cons;
Preenche-se a primeira lacuna com consumidor c e a segunda com ordemservico s, usando alias (c e s) para referenciar colunas de forma concisa. A palavra ON inicia a condição de junção, que é a terceira lacuna.
A expressão c.codigo_cons = s.codigo_cons estabelece a igualdade entre a chave primária da tabela Consumidor e a chave estrangeira presente em OrdemServico, garantindo que cada serviço seja associado ao seu consumidor.
O uso de INNER JOIN retorna apenas os consumidores que têm ordens de serviço, o que é coerente com a necessidade de listar nome/endereço do cliente junto dos serviços prestados.
Conteúdo do catálogo FC Concursos · Atualizado em