Re: [delphi-br] Como otimizar essa qry?
cara tenta assim... SELECT cad.nome, cad.codigo From cadastro cad LEFT JOIN orpenf OP ON OP.CdCliente = cad.Codigo where OP.cadastro BETWEEN DATE_SUB(curdate(), INTERVAL 90 DAY) and CURDATE() AND OP.Codigo IS NULL GROUP BY cad.nome, cad.codigo Não sei se vai funcionar nessa sintaxe.. Trabalho SQL Server, tem que ver como que fica a sintaxe para MySQL dos JOINS... Usa um LEFT. ele não restring nada... dai filtra pelo periodo e todos os que foram NULL... O Group by é somente para retornar menos registros... o CdCliente da tabela de pedidos eu chutei.. dai troca pro nome correto... espereo ter ajudao.. falou Atenciosamente Jaques Douglas Desenvolvedor Blumenau - SC Rodrigo Mota escreveu: Boa tarde Galera, Sei que aqui é Delphi ... Preciso fazer o seguinte listar os clientes que ainda não comprar em nos ultimos 3 meses Tenho Clientes - Tabela de Clientes - 23000 mil registros aproximadamente Orpenf - Ordem de pedidos - aqui 18000 mil aproximadamente... A qry até fiz...o problema é que está lento pra kctcomo não tenho no momento a conf. Do Servidor... fica ruim pra eu abusar...gostaria de otimizar, se puderem ajudar, agradeço. SELECT cad.nome, cad.codigo From cadastro cad where cad.codigo not in (select cliente from orpenf where cadastro BETWEEN DATE_SUB(curdate(), INTERVAL 90 DAY) and CURDATE() ) O banco é MySQL Ta demorando pacas...se tiver um jeito mais inteligente..., se não verei com o cliente a possibilidade de Upgrade No Servidor... Abs, Rodrigo Mota. [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas]
RE: [delphi-br] Como otimizar essa qry?
Tenta isso: select distinct cad.codigo, cad.nome from orpenf join cadastro cad on cad.codigo = orpenf.codigo where orpenf.cadastro not between date_sub(curdate(), interval 90 day) and curdate() Sds. To: delphi-br@yahoogrupos.com.br From: [EMAIL PROTECTED] Date: Sun, 21 Oct 2007 18:16:44 -0300 Subject: [delphi-br] Como otimizar essa qry? Boa tarde Galera, Sei que aqui é Delphi … Preciso fazer o seguinte listar os clientes que ainda não comprar em nos ultimos 3 meses Tenho Clientes - Tabela de Clientes - 23000 mil registros aproximadamente Orpenf - Ordem de pedidos - aqui 18000 mil aproximadamente... A qry até fiz...o problema é que está lento pra kctcomo não tenho no momento a conf. Do Servidor... fica ruim pra eu abusar...gostaria de otimizar, se puderem ajudar, agradeço. SELECT cad.nome, cad.codigo From cadastro cad where cad.codigo not in (select cliente from orpenf where cadastro BETWEEN DATE_SUB(curdate(), INTERVAL 90 DAY) and CURDATE() ) O banco é MySQL Ta demorando pacas...se tiver um jeito mais inteligente..., se não verei com o cliente a possibilidade de Upgrade No Servidor... Abs, Rodrigo Mota. [As partes desta mensagem que não continham texto foram removidas] _ Veja mapas e encontre as melhores rotas para fugir do trânsito com o Live Search Maps! http://www.livemaps.com.br/index.aspx?tr=true -- FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM * Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages * Para falar com o moderador, envie um e-mail para: [EMAIL PROTECTED] Links do Yahoo! Grupos * Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/delphi-br/ * Para sair deste grupo, envie um e-mail para: [EMAIL PROTECTED] * O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html
Re: [delphi-br] Como otimizar essa qry?
A Sugestão do Rubem é ótima, verifique também se existe um índice para o campo cadastro da tabela orpenf usado no Where. Em 21/10/07, Rubem Nascimento da Rocha [EMAIL PROTECTED] escreveu: Tenta isso: select distinct cad.codigo, cad.nome from orpenf join cadastro cad on cad.codigo = orpenf.codigo where orpenf.cadastro not between date_sub(curdate(), interval 90 day) and curdate() Sds. To: delphi-br@yahoogrupos.com.br From: [EMAIL PROTECTED] Date: Sun, 21 Oct 2007 18:16:44 -0300 Subject: [delphi-br] Como otimizar essa qry? Boa tarde Galera, Sei que aqui é Delphi Preciso fazer o seguinte listar os clientes que ainda não comprar em nos ultimos 3 meses Tenho Clientes - Tabela de Clientes - 23000 mil registros aproximadamente Orpenf - Ordem de pedidos - aqui 18000 mil aproximadamente... A qry até fiz...o problema é que está lento pra kctcomo não tenho no momento a conf. Do Servidor... fica ruim pra eu abusar...gostaria de otimizar, se puderem ajudar, agradeço. SELECT cad.nome, cad.codigo From cadastro cad where cad.codigo not in (select cliente from orpenf where cadastro BETWEEN DATE_SUB(curdate(), INTERVAL 90 DAY) and CURDATE() ) O banco é MySQL Ta demorando pacas...se tiver um jeito mais inteligente..., se não verei com o cliente a possibilidade de Upgrade No Servidor... Abs, Rodrigo Mota. [As partes desta mensagem que não continham texto foram removidas] _ Veja mapas e encontre as melhores rotas para fugir do trânsito com o Live Search Maps! http://www.livemaps.com.br/index.aspx?tr=true -- FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM Links do Yahoo! Grupos -- ... Eduardo Silva dos Santos DRD Sistemas. (27) 3218-4201 MSN: [EMAIL PROTECTED] Site: http://www.drdsistemas.com/ ... [As partes desta mensagem que não continham texto foram removidas] -- FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM * Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages * Para falar com o moderador, envie um e-mail para: [EMAIL PROTECTED] Links do Yahoo! Grupos * Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/delphi-br/ * Para sair deste grupo, envie um e-mail para: [EMAIL PROTECTED] * O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html
Re: [delphi-br] Como otimizar essa qry?
Opa valew, funcionou melhor...mas demora um pouco devido a qtd de registros, irei verificar amanhã as conf. do servidor, qq coisa indico um upgrade para melhorar mais. Ja deu uma melhorada enorme.. att, Rodrigo Mota. Sun, 21 Oct 2007 17:32:29 -0300, Eduardo Silva dos Santos [EMAIL PROTECTED] escreveu: A Sugestão do Rubem é ótima, verifique também se existe um índice para o campo cadastro da tabela orpenf usado no Where. Em 21/10/07, Rubem Nascimento da Rocha [EMAIL PROTECTED] escreveu: Tenta isso: select distinct cad.codigo, cad.nome from orpenf join cadastro cad on cad.codigo = orpenf.codigo where orpenf.cadastro not between date_sub(curdate(), interval 90 day) and curdate() Sds. To: delphi-br@yahoogrupos.com.br From: [EMAIL PROTECTED] Date: Sun, 21 Oct 2007 18:16:44 -0300 Subject: [delphi-br] Como otimizar essa qry? Boa tarde Galera, Sei que aqui é Delphi Preciso fazer o seguinte listar os clientes que ainda não comprar em nos ultimos 3 meses Tenho Clientes - Tabela de Clientes - 23000 mil registros aproximadamente Orpenf - Ordem de pedidos - aqui 18000 mil aproximadamente... A qry até fiz...o problema é que está lento pra kctcomo não tenho no momento a conf. Do Servidor... fica ruim pra eu abusar...gostaria de otimizar, se puderem ajudar, agradeço. SELECT cad.nome, cad.codigo From cadastro cad where cad.codigo not in (select cliente from orpenf where cadastro BETWEEN DATE_SUB(curdate(), INTERVAL 90 DAY) and CURDATE() ) O banco é MySQL Ta demorando pacas...se tiver um jeito mais inteligente..., se não verei com o cliente a possibilidade de Upgrade No Servidor... Abs, Rodrigo Mota. [As partes desta mensagem que não continham texto foram removidas] _ Veja mapas e encontre as melhores rotas para fugir do trânsito com o Live Search Maps! http://www.livemaps.com.br/index.aspx?tr=true -- FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM Links do Yahoo! Grupos -- ... Eduardo Silva dos Santos DRD Sistemas. (27) 3218-4201 MSN: [EMAIL PROTECTED] Site: http://www.drdsistemas.com/ ... [As partes desta mensagem que não continham texto foram removidas] -- FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM Links do Yahoo! Grupos