FC ConcursosFC Concursos

Questão FC688346

Situação hipotética para a questão. No banco de dados do Conselho Regional de Medicina (CRM) de certo estado da federação, há as tabelas Medico, Especialidade, Medico_Especialidade

Linguagem SQL

QUADRIX · 2025

Situação hipotética para a questão.

   

No banco de dados do Conselho Regional de Medicina (CRM) de certo estado da federação, há as tabelas Medico, Especialidade, Medico_Especialidade e Pagamento. Essas tabelas estão descritas conforme os quadros a seguir.

   

Tabela Medico

id_medico

INT (PK)

nome

VARCHAR (100)

cpf

VARCHAR (11)

situacao

INT

numero_registro

VARCHAR(20)

data_registro

DATE
 

Tabela Especialidade

id_especialidade INT
nome VARCHAR (50)
codigo_cfm

VARCHAR (30)

   

Tabela Medico_Especialidade

id_medico_esp

INT (PK)

id_medico

INT (FK)

id_especialidade INT (FK)
registro_especial VARCHAR (20)
   

Tabela Pagamento

id_pagamento

INT (PK)

id_medico

INT (FK)

data_vencimento DATE
data_pagamento DATE
valor DECIMAL (10, 2)
status VARCHAR (20)
tipo

VARCHAR (30)

 

Na tabela Medico, o atributo situacao será do tipo inteiro e o número 0 corresponderá à situação em que o registro está “inativo”, 1, à situação em que o registro está “ativo”, e 2, à situação em que o registro está “suspenso”. Na tabela Especialidade, o atributo codigo_cfm corresponde ao código da especialidade no Conselho Federal de Medicina. Na tabela Medico_Especialidade, o atributo registro_especial corresponde ao número do registro de qualificação de especialista. Na tabela Pagamento, o atributo status pode receber os valores “pago”, “pendente” e “atrasado”, e o atributo tipo pode receber os valores “anuidade”, “multa” e “taxa de registro”.

 

Com base nessa situação hipotética, assinale a opção que apresenta a query que retorna a lista de médicos nefrologistas registrados antes de 2024 que tenham multas com status “pendente” ou “atrasado”.

  1. SELECT m.nome

    FROM Medico m

    JOIN Medico_Especialidade me ON m.id_medico = me.id_medico

    JOIN Especialidade e ON me.id_especialidade = e.id_especialidade

    JOIN Pagamento p ON m.id_medico = p.id_medico

    WHERE e.nome = ‘Nefrologia’

    AND m.data_registro >= ‘2023‑01‑01’

    AND p.tipo = ‘multa’

    AND p.status IN (‘pendente’, ‘atrasado’);

  2. SELECT m.nome

    FROM Medico m

    JOIN Medico_Especialidade me ON m.id_medico = me.id_medico

    JOIN Especialidade e ON me.id_especialidade = e.id_especialidade

    JOIN Pagamento p ON m.id_medico = p.id_medico

    WHERE p.codigo_cfm = ‘Nefrologia’

    AND m.data_registro < ‘2024‑01‑01’

    AND p.tipo = ‘multa’

    AND p.status IN (‘pendente’, ‘atrasado’);

  3. SELECT m.nome

    FROM Medico m

    JOIN Medico_Especialidade me ON m.id_medico = me.id_medico

    JOIN Especialidade e ON me.id_especialidade = e.id_especialidade

    JOIN Pagamento p ON m.id_medico = p.id_medico

    WHERE e.nome = ‘Nefrologia’

    AND m.data_registro <= ‘2023‑12‑31’

    AND p.tipo = ‘multa’

    AND p.status IN (‘pendente’, ‘atrasado’);

  4. SELECT m.nome

    FROM Medico m

    JOIN Medico_Especialidade me ON m.id_medico = me.id_medico

    JOIN Especialidade e ON me.id_especialidade = e.id_especialidade

    JOIN Pagamento p ON m.id_medico = p.id_medico

    WHERE e.nome = ‘Nefrologia’

    AND m.data_registro <= ‘2023‑12‑31’

    AND p.status IN (‘pendente’, ‘atrasado’);

  5. SELECT m.nome

    FROM Medico m

    JOIN Medico_Especialidade me ON m.id_medico = me.id_medico

    JOIN Especialidade e ON me.id_especialidade = e.id_especialidade

    JOIN Pagamento p ON m.id_medico = p.id_medico

    WHERE e.nome = ‘Nefrologia’

    AND m.data_registro <= ‘2023‑12‑31’

    AND p.tipo = ‘multa’

    AND p.status = ‘pago’;

Mostrar resposta e comentário

Gabarito

Certo

Comentário do professor

A consulta seleciona apenas o nome dos médicos com a especialidade desejada e com multas em aberto. O JOIN entre Medico, Medico_Especialidade e Especialidade vincula médicos às suas especialidades via relacionamento muitos-para-muitos.

O filtro e.nome = 'Nefrologia' garante que só sejam considerados nefrologistas. A condição m.data_registro <= '2023-12-31' inclui apenas médicos registrados antes de 2024, ou seja, registrados até 31/12/2023.

O JOIN com Pagamento obriga a existência de pagamentos associados ao médico. A cláusula p.tipo = 'multa' restringe a resultados do tipo multa, e p.status IN ('pendente','atrasado') seleciona apenas multas não quitadas.

Assim, a consulta retorna os nomes dos nefrologistas registrados antes de 2024 que possuem pelo menos uma multa com status pendente ou atrasado.

Conteúdo do catálogo FC Concursos · Atualizado em

Continue aprendendo