Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Select-SQL com algumas tabelas
Message
 
To
All
General information
Forum:
Visual FoxPro
Category:
Databases,Tables, Views, Indexing and SQL syntax
Title:
Select-SQL com algumas tabelas
Miscellaneous
Thread ID:
00813582
Message ID:
00813582
Views:
30
Alow! Alow! Alow!

Tenho uma instrução Select que me retorna uma lista de clientes ordenado por acumulo financeiro. Este cursor é chamado de Resultado1

Resultado1 -> Codigo, Nome, Acumulado

Até aqui está tudo funcionando... Mas agora me foi requisitado que este relatório, além de listar os maiores clientes (financeiro) deveria também listar os 3 produtos mais vendidos para cada cliente e o bicho pegou...

Pensei em algo:
Select Resultado1.*, Estoque.Item, Produtos.Descricao, Sum(Estoque.Peso) As Peso;
   From Resultado1 Left Outer Join Estoque On Resultado1.Clodigo = Estoque.Cliente;
                   Left Outer Join Produtos On Estoque.Item = Produtos.Codigo;
   Where Between(Estoque.DataMov,{01/07/2003},{31/07/2003});
   Into Cursor Resultado
Tenho 2 problemas:

1) Vamos imaginar que o cliente tenha um lançamento financeiro dentro deste período (logo irá constar no cursor Resultado1) e não possui nenhum item na tabela estoque (vamos imaginar que foi um serviço prestado - Neste caso, a linha simplesmente é excluída, pois o select filtrou o Resultado1 com o filtro que deveria agir sobre apenas os lançamentos em estoque. Ou seja, eu preciso de um cursor com TODAS as linhas do cursor RESULTADO1 e apenas as 3 primeiras linhas (totalizada por produto) do ESTOQUE.

2) Como restringir apenas 3 linhas do ESTOQUE?

Estou começando a achar que vou precisar de 2 cursores com uma relação e SET SKIP OF para conseguir o efeito desejado dentro de um relatório! ;-)

Alguma dica?

[]s!
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Rodolfo Duarte
Next
Reply
Map
View

Click here to load this message in the networking platform