Fórum Desafio Stored Procedure MySQL #420212
19/07/2012
0
Estou precisando criar uma stored procedure que me retorne uma comição. Minha tabela é composta pelos seguintes campos: Funcionario, subgrupo, grupo, fabricante e comissao. Montei um algoritmo que fará no máximo 4 verificações porque se eu for fazer todas as verificações possíveis serão ao todo 16.
Alguém poderia me dar uma ajuda sobre como posso fazer isso no MySQL? AGRADEÇO DESDE JÁ QUALUQER AJUDA...
O algoritmo que eu montei segue a baixo:
FUN - funcionario | SUB - subgrupo | GRU - grupo | FAB - fabricante | dcom - comissao a ser retornada
(t) - retornou registro
(f) - não retornou registro
[Algoritmo]
FUN(t)
SUB(t)
GRU(t)
FAB(t)
else
FAB(f)
else
GRU(f)
FAB(t)
else
FAB(f)
SUB(f)
GRU(t)
FAB(t)
else
FAB(f)
else
GRU(f)
FAB(t)
else
FAB(f)
else
FUN(f)
SUB(t)
GRU(t)
FAB(t)
else
FAB(f)
else
GRU(f)
FAB(t)
else
FAB(f)
SUB(f)
GRU(t)
FAB(t)
else
FAB(f)
else
GRU(f)
FAB(t)
else
FAB(f)
Vagner Almeida
Curtir tópico
+ 0Posts
19/07/2012
Joel Rodrigues
Gostei + 0
19/07/2012
Vagner Almeida
A idéia é a seguinte:
eu tinha montado uma procedure utilizando como base a tabela verdade entre
Funcionario | Subgrupo | Grupo | Fabricante
Mas usando a atabela verdade a procedure irá fazer até 16 verificações. e se eu conseguir contar uma procedure com base no algoritimo abaixo, terei no máximo 4 verificações.
ignore os pontos.
[Algoritmo]
FUN(t) [Verifica se existe registros com o funcionário informado, tendo, vai para o passo seguinte]
..SUB(t)[Verifica se existe registros com o funcionario e subgrupo, tendo, vai para o passo seguinte]
....GRU(t)[Verifica se existe registros com o funcionario, subgrupo e grupo, tendo, vai para o passo seguinte]
......FAB(t)[e assim por diante]
......else
......FAB(f)
....else
....GRU(f)
......FAB(t)
......else
......FAB(f)
..else
..SUB(f)
....GRU(t)
......FAB(t)
......else
......FAB(f)
....else
....GRU(f)
......FAB(t)
......else
......FAB(f)
else
FUN(f)
..SUB(t)
....GRU(t)
......FAB(t)
......else
......FAB(f)
....else
....GRU(f)
......FAB(t)
......else
......FAB(f)
..else
..SUB(f)
....GRU(t)
......FAB(t)
......else
......FAB(f)
....else
....GRU(f)
......FAB(t)
......else
......FAB(f)
Gostei + 0
20/07/2012
Joel Rodrigues
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)