Campo no GRID de outra tabela

09/01/2006

0

É o seguinte, estava no msn com o Emerson e joguei uma dúvida sobre se era possível colocar mais um campo no Grid com um campo ´total´ de uma outra tabela. Essas tabelas o campoReg em comum. Ele foi bastante ( como sempre ) paciente e me disse que eu podia fazer mesmo na consulta SQL. Uso o Zeos com MySQL.
Me passou a seguinte consulta SQL:

select tabA.campoReg,tabA.campoValor, tabB.campoReg, tabB.campoTotal from tabA left join  tabB on (tabB.campoReg = tabA.campoReg) where...


Ok, funciona. Só que quando coloco mais de mil registros fica muito lento, 10 segundo para executar essa query.

Imagine todo usuário esperando isso para ver o retorno.
Tem alguma maneira de fazer isso mais rápido ?


Laelsonc

Laelsonc

Responder

Posts

09/01/2006

Paulo

Stored Procedure(SP), já tentou? Não sei se o Mysql suporta SP´s. Pq SP? Pq elas são executadas dentro do servidor e o servidor somente te retorna o resulatdo da consulta. É uma sugestão.


Responder

09/01/2006

Laelsonc

O MySQL 4.. não suporta. Infelizmente não dá pra mudar toda a aplicação agora para o MySQL 5 :cry: .

Mas obrigado.

Alguém mais ?


Responder

28/01/2006

Augustolima

Mano,

Verificou se os campos onde vc faz o relacionamento estão indexados nas duas tabs?


Responder

28/01/2006

Macario

Olá so por curiosidade.(ja que uso SQL Server)

Eu uso instruções com varias junções (left joit) e que geralmente retornam um minimo de 7000 registros, e não tenho demora maior que 5 segundos(isso sem usar indices).

Creio que deva ter outro fator para tal demora. Pois pelo que sei o MySQL é um banco de otima performance.


Responder

28/01/2006

Augustolima

Bom,

Foi apenas um palpite para tentar ajudar o colega, mas to vendo ali que ele num colocou toda a sql, talvez algo não esteja legal na clausula WHERE.

Concorda?


Responder

28/01/2006

Macario

Ola [b:3b78d26cdf]AgustoLima[/b:3b78d26cdf], sua dica é importante, apenas citei meu caso(apenas para comparação ja que são SGBD distintos).

Sim concordo contigo,[b:3b78d26cdf] laelsonc [/b:3b78d26cdf]se voce puder postar a instrução por inteira talvez possamos ajuda-lo melçhor


Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar