LISTA DE CLASSIFICA?ÃO
Oi gente, preciso gerar um relatório no datareport (vb6/access2007) que mostre uma lista de classificação parecida com as de concursos.Esclarecendo melhor:
1- uma lista de funcionários cadastrados por classe;
2 - os funcionários são pontuados por assiduidade, cursos,etc;
3 - de cada classe(A,B,C,D e E) serão promovidos os 10 primeiros da pontuação para a próxima classe.
Ai vem a questão: como gerar esse relatório sendo que, provavelmente, haverá empates . Como fazer uma rotina para gerar o relatório com os critérios de desempate:
1º numero maior de pontos
2° mais tempo na classe atual
3º por idade.
Alguém já viu algo parecido para que eu possa me orientar a respeito???Valeu....
1- uma lista de funcionários cadastrados por classe;
2 - os funcionários são pontuados por assiduidade, cursos,etc;
3 - de cada classe(A,B,C,D e E) serão promovidos os 10 primeiros da pontuação para a próxima classe.
Ai vem a questão: como gerar esse relatório sendo que, provavelmente, haverá empates . Como fazer uma rotina para gerar o relatório com os critérios de desempate:
1º numero maior de pontos
2° mais tempo na classe atual
3º por idade.
Alguém já viu algo parecido para que eu possa me orientar a respeito???Valeu....
Se entendi bem vc quer dar um Order BY certo?
se for isso vc tem os campos especificos para isso? como campo com os pontos, data de cadastro etc... basta colocar os campos no ordem e ta feito
seria algo como:
[txt-color=#0000f0]SELECT[/txt-color] F.id, F.nome, F.dtcadastro, F.Pontos, C.classifica [txt-color=#0000f0]FROM[/txt-color] funcionario as F, Classifica as C [txt-color=#0000f0]WHERE [/txt-color]C.funcionario_id = f.ID ORDER BY C.Classifica, F.pontos, F.dtcadastro
Você ainda pode usar o GROUP BY para agrupo os dados por grupos distintos porem nao sei se é isso, boa sorte
se for isso vc tem os campos especificos para isso? como campo com os pontos, data de cadastro etc... basta colocar os campos no ordem e ta feito
seria algo como:
[txt-color=#0000f0]SELECT[/txt-color] F.id, F.nome, F.dtcadastro, F.Pontos, C.classifica [txt-color=#0000f0]FROM[/txt-color] funcionario as F, Classifica as C [txt-color=#0000f0]WHERE [/txt-color]C.funcionario_id = f.ID ORDER BY C.Classifica, F.pontos, F.dtcadastro
Você ainda pode usar o GROUP BY para agrupo os dados por grupos distintos porem nao sei se é isso, boa sorte
ROMERO_KCOAL a ordenação por ORDER BY é tranquilo pra mim, o que eu não consigo visualizar seria como classificar esses funcionários já executando os critérios de desempate. Provavelmente entre os 10 primeiros digamos fique 3 empatados com o mesmo número de pontos em 3º lugar; mais 4 empatados em 6º lugar, etc.Será que tem como executar isso em SQL ou terá de ser feito alguma função separada????
Tópico encerrado , respostas não são mais permitidas