LeoPessoa Postado Outubro 28, 2011 Denunciar Share Postado Outubro 28, 2011 Bom dia pessoal!Eu uso um select de uma tabela que contem varios vencimentos.Esse select me retorna o vencimento, codigo do cliente e valor da parcela.Cada vencimento desse, existe uma quantidade diferente. Por exemplo:Vencimento 25/10/11, existem 5 mil clientes;Vencimento 01/11/11, existem 3.500 vencimentos.No select, ele me retorna todos esses clientes (é um relatório analítico). Mas na verdade, estou querendo somente mil de cada vencimento.Existe alguma instrução pra eu limitar a quantidade de clientes que vai me retornar?Ao invés dos 5 mil do vencimento 25/10, ele me retorne apenas os 1000.E assim com todos os vencimentos.Ressalto que o relatorio é analitico e uso um determinado intervalo de vencimentos, ou seja, saem varios vencimentos no resultado do select.Agradeço bastante se puderem me ajuda! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Vinicius Schuh Postado Outubro 28, 2011 Denunciar Share Postado Outubro 28, 2011 (editado) Boa Tarde Leo.Você pode usar o comando SELECT TOP n - ( n é o numero de registros a retornar) antes da instrução SELECT. A sintaxe seria: SELECT TOP 20 nome, endereco, email FROM tabela ORDER BY nomeIra retornar apenas 20 registros.Espero ter ajudado. Até + Editado Outubro 29, 2011 por Vinicius Schuh Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 LeoPessoa Postado Outubro 31, 2011 Autor Denunciar Share Postado Outubro 31, 2011 Já tentei isso!Mas esse comando retorna a quantidade geral.Eu quero que retorne a quantide por cada vencimento!Obrigado. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 fulvio Postado Novembro 1, 2011 Denunciar Share Postado Novembro 1, 2011 Bom dia Leo, Desta forma não tem jeito. O que poderá fazer é carregar todo o recordeset e depois filtrar no próprio relatório / fonte, para conseguir o resultado desejado. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 rodrigo_fabiam Postado Novembro 4, 2011 Denunciar Share Postado Novembro 4, 2011 Pessoal,Ele não poderia usar uma SUB QUERY, e nessa subquery, ele colocaria o TOP 1000? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 fulvio Postado Novembro 7, 2011 Denunciar Share Postado Novembro 7, 2011 Podia até utilizar subquery, mas aí você teria q saber quais os vencimentos... Se tivesse 5 vencimentos, teriam q ser 5 subquerys com union. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 LeoPessoa Postado Novembro 7, 2011 Autor Denunciar Share Postado Novembro 7, 2011 Fulvio, tem bem mais que 5 vencimentos!Você poderiam me dar um exemplo dessas subquerys ?Abaixo segue a query que estou usando:SELECT a.cod_cli as CodCli, a.DataAte as Vencimento, a.num_contrato as Contrato, b.cic as CPF, a.ValorPrest as VrVencido, a.ValorTotal as RiscoTotal FROM dbo.titulos a, dbo.cliente bWHERE a.cod_empcli = b.cod_empCliIAND a.cod_cli = b.cod_cliAND a.cod_empcli = '18'AND a.flag = 'A'AND a.DataAte BETWEEN '2011/09/05' AND '2011/10/25'ORDER BY a.ValorTotal DESC Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 fulvio Postado Novembro 7, 2011 Denunciar Share Postado Novembro 7, 2011 Boa tarde Leo, você teria q identificar as datas. Sendo assim teria que dar um select distinct nas datas de vencimentos. Pegaria as datas que retornasse e colocaria no seu select, dando o TOP XXX que quisesse. Utilizaria o UNION para cada data de vencimento.... Para fazer desta forma seria muito complicado e além disto a sua performance não ficaria boa. O que poderia fazer é implementar a idéia q dei no post acima: filtrar o recordset no fonte. você o carregaria por inteiro. Depois disto iria fazendo um filtro para cada data, com um contador para identificar quantos resultados deseja. Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
LeoPessoa
Bom dia pessoal!
Eu uso um select de uma tabela que contem varios vencimentos.
Esse select me retorna o vencimento, codigo do cliente e valor da parcela.
Cada vencimento desse, existe uma quantidade diferente. Por exemplo:
Vencimento 25/10/11, existem 5 mil clientes;
Vencimento 01/11/11, existem 3.500 vencimentos.
No select, ele me retorna todos esses clientes (é um relatório analítico). Mas na verdade, estou querendo somente mil de cada vencimento.
Existe alguma instrução pra eu limitar a quantidade de clientes que vai me retornar?
Ao invés dos 5 mil do vencimento 25/10, ele me retorne apenas os 1000.
E assim com todos os vencimentos.
Ressalto que o relatorio é analitico e uso um determinado intervalo de vencimentos, ou seja, saem varios vencimentos no resultado do select.
Agradeço bastante se puderem me ajuda!
Link para o comentário
Compartilhar em outros sites
7 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.