ajuda: recursividade ou store procedure?
Pessoal sou iniciante em mysql e to meio perdido, preciso fazer uma consulta entre duas tabelas PERFIL e Questoes, vou tentar explicar o caso :
São 5 Tabelas:Series: Guardam 12 series do ensino fundamental ao ensino médioTipo: Classificam as questões em niveis de dificuldade de 1 a 20, e um tempo medio que a questao deve ser respondidaQuestões: Uma matriz de questões distribuídas para cada ano e tipoExemplo:Questão 1 + 1 = 1, TIPO:1 ANO: 1…Tipo N Ano N.Agora vem as tabelas auxiliaresDisciplina: Guarda as disciplinas como matematica, portugues, …Perfil: (Essa tabela é o parametro para gerar os questionarios)guarda o total de questoes conforme a disciplina, considera-se que para um numero sequencial de questões normais, havera ou não uma correspondencia de uma questão extra, há uma tolerancia de erros, para cada disciplina, exemplo matematica pode errar uma de cada tipo, porem essas ligações pensei de fazer via programação.Exemplo: Matematica = Pode errar 1 vez, se o aluno responder uma questão do tipo 3 errada, sera substituida por outra do mesmo tipo. no segundo erro, termina a prova e encerra a resposta do questionario.Sobre o Questionario:Dado de parametros a Disciplina, tenho o perfil de questões para o questionário( DISCIPLINA, ANO e TIPO e suas respectivas quantidades de questões normais e questões extra), a SQL então deve retornar as questões que atendam as exigencias de QUANTIDADE (NORMAL E EXTRA) CONFORME Os TIPOS cadastrados em PERFIL.
Minha tentativa foi com esse codigo (sem sucesso):
SELECT
COALESCE(CatParent.id, Questoes.id) id,
COALESCE(CatParent.enunciado, Questoes.enunciado) enunciado,
perfil.tipo_id
FROM perfil
JOIN Questoes ON perfil.tipo_id = Questoes.tipo_id and
Questoes.ano_id = perfil.ano_id
LEFT JOIN Questoes AS CatParent ON Questoes.tipo_id = CatParent.id
ORDER BY RAND( )
group by id, enunciado, tipo_id
Não sei como limitar a quantidade consideando o total de questões Normais e Questões extra de forma dinamica cada vez que ele busca tais questões, é possivel? como fazer? ajudem por favor.
Grato
Demonstração em valores da Tabela Perfil , as questões e o Questionário resultado da consulta.

Discussão (0)
Carregando comentários...