Pular para o conteúdo principal

Questão de Banco de Dados — MySQL — FCC 2023

Banco de DadosMySQL
Código
fc144584
Banca
FCC
Órgão
TRT 21
Ano
2023
Cargo
AJ TRT21

Para responder a questão, considere as instruções a seguir.

 

Considere a existência das tabelas abaixo.

 

Tabela departamento:
idDep VARCHAR(10) primary key
nomeDep VARCHAR(70)
telefoneDep VARCHAR(15)

 

Tabela funcionario
emailFun VARCHAR(45) primary key
nome Fun VARCHAR (70)
telefoneFun VARCHAR(15)
cargoFun VARCHAR(45)
salarioFun DOUBLE
idDep VARCHAR(10) foreign key

 

Tabela usuario:
emailFun VARCHAR(45) primary key e foreign key
senhausu VARCHAR(50)

 

A relação de departamento para funcionario é 1:n e de funcionario para usuario, 1:1.

No MySQL, com o banco de dados aberto e em condições ideais, para contar quantos funcionários pertencem ao departamento com idDep igual a 'Dep1' e para listar os nomes desses funcionários em ordem alfabética ascendente, separados por virgulas, utiliza-se o comando
  1. ASELECT COUNT (F.emailFun) AS Quantidade_Funcionarios, CONCAT (F.nomeFun ORDER BY F. nome Fun ASC SEPARATOR', ') AS Nomes_Funcionarios FROM funcionario F INNER JOIN departamento D ON F.idDep D.idDep;
  2. BSELECT COUNT(F. emailFun) AS Quantidade_Funcionarios, GROUP_CONCAT (F. nome Fun ORDER BY F.nomeFun ASC SEPARATOR',') AS Nomes_Funcionarios FROM funcionario F INNER JOIN departamento D ON = F.idDep D.idDep WHERE D.idDep = 'Dep1';
  3. CSELECT COUNT (F. emailFun) AS Quantidade_Funcionarios, GROUP_CONCAT (F. nome Fun ORDER BY F.nome Fun ASC SEPARATOR', ') AS Nomes Funcionarios FROM funcionario F INNER JOIN departamento D ON F.idFun = D. idDep WHERE D.idDep = 'Dep1';
  4. DSELECT COUNT (F. emailFun) AS Quantidade_Funcionarios, CONCAT (F.nomeFun ORDER BY F. nome Fun ASC SEPARATOR, ') AS Nomes_Funcionarios FROM funcionario F WHERE D. idDep = 'Dep1';
  5. ESELECT COUNT(F.emailFun) AS Quantidade_Funcionarios, CONCAT(F.nomeFun ORDER BY F.nomeFun ASC, SEPARATOR, AS Nomes Funcionarios FROM funcionario F INNER JOIN departamento D ON F.idDep D.idDep WHERE D.idDep= 'Dep1';
Revelar gabarito e comentário

GabaritoB — SELECT COUNT(F. emailFun) AS Quantidade_Funcionarios, GROUP_CONCAT (F. nome Fun ORDER BY F.nomeFun ASC SEPARATOR',') AS Nomes_Funcionarios FROM funcionario F INNER JOIN departamento D ON = F.idDep D.idDep WHERE D.idDep = 'Dep1';

Link permanente: /questoes/fc144584