Galera, sou iniciante no uso do MySQL e estou com um problema. Para ficar mais claro já aviso que uso o MySQL e Java.
O meu problema está nos relatório que geramos no nosso sistema. Os relatórios são feitos a partir de um comando feito em uma página .java que executa querys chamando métodos de algum DAO para gerar o resultado, depois insere os dados necessários nas colunas do relatório.
No relatório em questão (que tem 6 colunas no total) é executado um determinado método, esse método, primeiramente, executa um SELECT que tem como retorno determinadas colunas e cerca de 50 linhas. Duas dessas colunas serão inseridas diretamente no relatório e as outras quatro serão obtidas a partir da execução de quatro outros métodos que usam como parâmetro uma das colunas retornadas do primeiro método.
O problema é que é necessária a execução dos 4 métodos em cada linha do primeiro SELECT e usamos o ResultSet do mesmo e um laço no java para fazer isso. Mas fica muito demorado dessa forma (afinal, com 50 linhas de resultado no primeiro SELECT, são 200 consultas para gerar o relatório), portanto preciso de uma forma de gerar esse laço dentro do próprio SQL para que o tempo de execução fosse menor.
Espero ter sido claro e já agradeço quem puder ajudar.
Question
Joca Baldini
Galera, sou iniciante no uso do MySQL e estou com um problema. Para ficar mais claro já aviso que uso o MySQL e Java.
O meu problema está nos relatório que geramos no nosso sistema. Os relatórios são feitos a partir de um comando feito em uma página .java que executa querys chamando métodos de algum DAO para gerar o resultado, depois insere os dados necessários nas colunas do relatório.
No relatório em questão (que tem 6 colunas no total) é executado um determinado método, esse método, primeiramente, executa um SELECT que tem como retorno determinadas colunas e cerca de 50 linhas. Duas dessas colunas serão inseridas diretamente no relatório e as outras quatro serão obtidas a partir da execução de quatro outros métodos que usam como parâmetro uma das colunas retornadas do primeiro método.
O problema é que é necessária a execução dos 4 métodos em cada linha do primeiro SELECT e usamos o ResultSet do mesmo e um laço no java para fazer isso. Mas fica muito demorado dessa forma (afinal, com 50 linhas de resultado no primeiro SELECT, são 200 consultas para gerar o relatório), portanto preciso de uma forma de gerar esse laço dentro do próprio SQL para que o tempo de execução fosse menor.
Espero ter sido claro e já agradeço quem puder ajudar.
Link to comment
Share on other sites
1 answer to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.