Jump to content
Fórum Script Brasil
  • 0

Determinar quantidade da seleção


LeoPessoa

Question

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 to comment
Share on other sites

7 answers to this question

Recommended Posts

  • 0

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 nome

Ira retornar apenas 20 registros.

Espero ter ajudado. Até +

Edited by Vinicius Schuh
Link to comment
Share on other sites

  • 0

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 b

WHERE a.cod_empcli = b.cod_empCliI

AND a.cod_cli = b.cod_cli

AND a.cod_empcli = '18'

AND a.flag = 'A'

AND a.DataAte BETWEEN '2011/09/05' AND '2011/10/25'

ORDER BY a.ValorTotal DESC

Link to comment
Share on other sites

  • 0

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.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152.2k
    • Total Posts
      652k
×
×
  • Create New...