Bom dia a todos,Estou com o seguinte scriptcreate table funcionario( idfunc mediumint primary key, iddept mediumint not null, nomefunc varchar(20) not null, cargo varchar(20) not null, dtadm date not null, salario float not null, comissao float);insert into funcionario values (1,3,'Antonio','Supervisor','10/october/2005',3700.00,600.00);insert into funcionario values (2,5,'Vilmar','Analista','01/january/1999',4300.00,2000.00);insert into funcionario values (3,3,'Mauro','Gerente','10/april/2010',4500.00,2500.00);insert into funcionario values (4,3,'Paulo','Auxiliar','09/february/2016',1200.00,640.00);insert into funcionario values (5,4,'Rogerio','Gerente','09/june/2010',4300.00,6700.00);insert into funcionario values (6,5,'Ana','Presidente','09/april/1996',8000.00,3440.00);insert into funcionario values (7,6,'Mauricio','Auxiliar','03/february/2014',2500.00,340.00);insert into funcionario values (8,6,'Victor','Supervisor','06/february/2013',3400.00,440.00);insert into funcionario values (9,2,'Jose','Analista','08/july/2016',4200.00,640.00);O problema ocorre no phpmyadmin, também no sql live e sqlplus da oracle 11g, ao realizar uma subconsulta como esta:
select nomefunc, cargo, salario from funcionario where salario in (select max(salario) from funcionario group by cargo) order by cargo asc;
resultado da consulta:
NOMEFUNC CARGO SALARIO
Vilmar Analista 4300
Mauricio Auxiliar 2500
Mauro Gerente 4500
Rogerio Gerente 4300
Ana Presidente 8000
Antonio Supervisor 3700Trás o cargo Gerente duplicado, alguém saberia o porque disto? pois o agrupamento já tem a função de distinção, o mais estranho é que quando dou update no salario do analista 'Vilmar' que possue o mesmo salario que o gerente 'Rogerio', o cargo de gerente para de duplicar nesta consulta que demonstrei.