Ir para conteúdo
Fórum Script Brasil
  • 0

Limitar resultados


Flesha

Pergunta

Olá gente, antes de mais nada o LIMIT xx,yy não funciona com minha dúvida hehehe

Seguinte...

Imaginemos uma tabela com 100 registros, com campos de dia e nome

Referente ao dia 1 existe 50 clientes

Referente ao dia 2 existe 25 clientes

Referente ao dia 3 existe 25 clientes

Eu quero fazer com que em uma única query, ele selecione 10 clientes de cada dia

Retonar assim

Dia1: 10 Clientes

Dia2: 10 clientes

Dia3: 10 clientes

sendo cada 10 clientes destes dentro do seu respectivo dia.

PS: a forma dos dias tem que ser dinâmica, pois podem ter 1 dia como 31

Sabem como?

abraços!

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

Oi,'Flesha'!

Andei pensando em uma solução simples para este problema e não encontrei outro meio que não fosse através de programação.

A lógica exige um loop que girará conforme os dias passados.

Os dias passados poderão (melhor, deverão) estar em um vetor.

A função do vetor é guardar dias seqüenciais ou não. Exemplo dias 1,2,3, etc; ou 1,10,15,etc.

Uma tabela temporária deverá ser criada para armazenar os resultados.

A cada interação do loop

um select será executado e o resultado deverá ser colocado na tabela temporária.

Uma cláusula where no select indicará cada dia. exemplo where dia = variavel

Uma cláusula limit limitará a quantidade de registros a serem retornados pelo select.

O valor limite da cláusula limit também poderá ser dinâmico (fornecido por uma variável).

Após terminar o loop você poderá consultar e trabalhar com os dados na tabela temporária.

Após o término deos trabalhos com a tabela temporária você deverá excluí-la para liberar a memória alocada por ela.

Toda esta rotina poderá ser escrita na linguagem de programação que você usa ou através de uma stored procedure que executará as operações de criação da tabela temporária, insert e select dinâmicos.

É isso.

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.


  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...