Skip to header Skip to main navigation Skip to main content Skip to footer
Home
Gabarite TI
Blog de Revisões

Main navigation

  • Home
  • Folha Dirigida (opens in new tab)
  • Estudei (opens in new tab)
  • Tec Concursos (opens in new tab)
  • Papa Concursos (opens in new tab)
  • Esquadrão de Elite (opens in new tab)
  • Napkin AI (opens in new tab)
  • Notebook LM (opens in new tab)
  • FCC (opens in new tab)
  • FGV (opens in new tab)
  • CEBRASPE (opens in new tab)

CGM-SP-2025-FCC: INNER JOIN

Breadcrumb

  • Home
  • CGM-SP-2025-FCC: INNER JOIN
By cris | 2:26 PM UTC, Sun April 26, 2026
Banco de Dados
Consultas e Comandos em SQL

Um Auditor de uma Prefeitura está analisando o banco de dados do sistema responsável por gerenciar pagamentos realizados aos fornecedores. O sistema utiliza o modelo de dados relacional e apresenta a seguinte estrutura:

 

O Auditor deseja listar todos os pagamentos realizados, exibindo o NomeFornecedor, o CNPJ e o Valor Pagamento. É necessário relacionar as tabelas Pagamentos e Fornecedores, com base no modelo de dados relacional, para obter as informações corretamente.

 A consulta SQL correta para essa auditoria é:

A
SELECT p . NomeFornecedor, f .CNPJ, p . Valor Pagamento FROM Pagamentos p JOIN Fornecedores f ON p . IDFornecedor = f . IDPagamento;

B
SELECT f . NomeFornecedor , f . CNPJ, p . Valor Pagamento FROM Pagamentos p FULL JOIN Fornecedores f ;

C
SELECT f . NomeFornecedor, f .CNPJ, p .Valor Pagamento FROM Pagamentos p INNER JOIN Fornecedores f ON p . IDFornecedor = f . IDFornecedor;

D
SELECT NomeFornecedor, CNPJ, Valor Pagamento FROM Pagamentos , Fornecedores ;

E
SELECT f . NomeFornecedor, f . CNPJ , p .Valor Pagamento FROM Pagamentos p LEFT JOIN Fornecedores f ON p .IDPagamento = f . IDFornecedor;

 

Por que a alternativa C está correta?

O comando da alternativa C faz a junção exata das informações solicitadas seguindo a lógica do modelo relacional:

  1. A Seleção das Colunas (SELECT): SELECT f.NomeFornecedor, f.CNPJ, p.ValorPagamento O auditor quer essas três informações. O prefixo f. e p. (os aliases ou apelidos) indica corretamente de onde cada dado vem: Nome e CNPJ vêm da tabela de Fornecedores (f), enquanto o Valor vem da tabela de Pagamentos (p).
  2. A Junção (INNER JOIN): FROM Pagamentos p INNER JOIN Fornecedores f Isso indica que queremos juntar os dados das duas tabelas, retornando apenas as linhas onde houver correspondência entre elas.
  3. A Condição de Relacionamento (ON): ON p.IDFornecedor = f.IDFornecedor Este é o ponto crucial! Para saber qual fornecedor recebeu qual pagamento, precisamos igualar a chave estrangeira na tabela de pagamentos (p.IDFornecedor) com a chave primária na tabela de fornecedores (f.IDFornecedor). A alternativa C faz isso perfeitamente.

Por que as outras alternativas estão incorretas?

Como é típico nas provas da FCC, as opções incorretas misturam as colunas, esquecem cláusulas ou ligam as chaves erradas. Veja os erros:

  • A: ❌ Erros de origem e de chaves. Primeiro, no SELECT, ela pede p.NomeFornecedor (mas o nome do fornecedor está na tabela f, e não na p). Segundo, na condição ON, ela tenta ligar p.IDFornecedor com f.IDPagamento (a tabela Fornecedores sequer possui uma coluna chamada IDPagamento).
  • B: ❌ Falta a condição de junção. A alternativa usa FULL JOIN mas "esquece" de colocar a cláusula ON para dizer como as tabelas se relacionam. Sem o ON, o banco de dados não sabe como cruzar os dados, o que geraria um erro de sintaxe.
  • D: ❌ Produto Cartesiano. Ao colocar as duas tabelas no FROM separadas por vírgula e sem nenhuma cláusula WHERE para ligar os IDs, o banco de dados fará um "produto cartesiano". Ou seja, ele vai misturar todos os pagamentos com todos os fornecedores, gerando milhares de linhas incorretas. Se o João recebeu 100 reais, o sistema diria que todos os fornecedores cadastrados receberam aqueles mesmos 100 reais.
  • E: ❌ Relacionamento sem sentido. A cláusula ON está errada. Ela tenta ligar p.IDPagamento = f.IDFornecedor. O ID do Pagamento não tem nada a ver com o ID do Fornecedor. É como tentar cruzar o número de uma nota fiscal com o CPF de uma pessoa; os números não vão bater e a consulta não trará o resultado correto.

 

 

 

Powered by Drupal

Copyright © 2026 Company Name - All rights reserved

Developed and Designed by Alaa Haddad at Flash Web Center, LLC