[firebase-br] RES: Comando Lento

T.F - Terra thgfragoso em terra.com.br
Ter Jun 10 17:05:02 -03 2014


Valeu Pessoal,

O Comando do Matheus ficou mais rapido pois vou usar em uma view.

Obrigado.

Abcs

Thiago Fragoso

-----Original Message-----
From: lista [mailto:lista-bounces em firebase.com.br] On Behalf Of Matheus
Georg Mathias(Priori)
Sent: terça-feira, 10 de junho de 2014 16:01
To: 'FireBase'
Subject: [firebase-br] RES: Comando Lento

Cara, sem muitas delongas eu fiz um sql rapidinho da uma testadinha ai pra
ver no que dá....


select
     c.cliente,
     min((select first 1 m.data from movimento m where c.cliente = m.cliente

						  and m.tipo_operacao = 'S'
						   and m.cancelada = 'F'
						order by m.data desc)) as
data_1,

     min((select first 1 skip 1 m.data from movimento m where c.cliente =
m.cliente
						  and m.tipo_operacao = 'S'
						   and m.cancelada = 'F'
						 order by m.data desc)) as
data_2,

     min((select first 1 skip 2 m.data from movimento m where c.cliente =
m.cliente
						  and m.tipo_operacao = 'S'
						   and m.cancelada = 'F'
						 order by m.data desc)) as
data_3

 

    from clientes c



-----Mensagem original-----
De: lista [mailto:lista-bounces em firebase.com.br] Em nome de T.F - Terra
Enviada em: terça-feira, 10 de junho de 2014 15:53
Para: 'FireBase'
Assunto: [firebase-br] Comando Lento

Boa tarde!

 

Estou fazendo um comando para retornar as 3 ultimas datas de movimentos de
um determinado cliente , porem o comando quando rodado para todos clientes
fica muito lento, alguem tem alguma sugestao?

 

Obrigado

 

Thiago Fragoso

 

 

select

     c.cliente,

     min((select first 1 m.data from movimento m where c.cliente = m.cliente
order by m.data desc)) as data_1,

     min((select first 1 skip 1 m.data from movimento m where c.cliente =
m.cliente order by m.data desc)) as data_2,

     min((select first 1 skip 2 m.data from movimento m where c.cliente =
m.cliente order by m.data desc)) as data_3

 

    from clientes c

 

    inner join movimento m on m.cliente = c.cliente

 

    where m.tipo_operacao = 'S'

    and m.cancelada = 'F'

    --and c.cod_cliente = '16'

 

    group by cliente

______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br Para
saber como gerenciar/excluir seu cadastro na lista, use:
http://www.firebase.com.br/fb/artigo.php?id=1107
Para consultar mensagens antigas: http://firebase.com.br/pesquisa


______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br Para
saber como gerenciar/excluir seu cadastro na lista, use:
http://www.firebase.com.br/fb/artigo.php?id=1107
Para consultar mensagens antigas: http://firebase.com.br/pesquisa





Mais detalhes sobre a lista de discussão lista