Autor Tópico: Limitar o Nr de linhas retornadas pelo Sql  (Lida 5879 vezes)

Haroldo

  • Expert
  • *****
  • Mensagens: 6262
  • Conhecimento diminui limitações.△TFA△
    • Infinitus Web Gestão Empresarial/Gestão ITIL/Consultoria Scriptcase
Re: Limitar o Nr de linhas retornadas pelo Sql
« Responder #15 Online: Novembro 18, 2010, 04:44:31 pm »
Nesse exemplo eu tenho a liberdade de usar qualquer query sql:
http://www.netmake.com.br/forum/index.php?topic=2495.0
 
Criei uma tabela auxiliar e resolveu o problema, ficou bom, mas ficaria melhor direto no sql do scriptcase. Abri um ticket e vou aguardar.

Obrigado a todos.


Clifor Travaini.

Eduardo Alves

  • Avançado
  • ****
  • Mensagens: 262
    • SLords Informatica
    • Email
Re: Limitar o Nr de linhas retornadas pelo Sql
« Responder #16 Online: Dezembro 01, 2010, 10:44:02 am »
usa no final LIMIT 0,20 ai dá certo

Olá,

Estou precisando criar um gráfico com os 20 melhores dias de vendas
Estou utilizando o banco de dados Postgres, coloquei o comando
LIMIT 20 no Sql da minha aplicação de consulta, mas o SC não está
respeitando este comando, não posso criar uma view para resolver
trazendo somente os 20 melhores, pois vou utilizar um where dinâmico
com vários parâmetros, alguém tem alguma sugestão ?


Sql que estou utilizando:

     SELECT SUM(fato_venda.valor) AS valor,
                SUM(fato_venda.quantidade) AS quantidade,
                fato_venda.data
       FROM fato_venda
INNER JOIN dim_data_venda
           ON dim_data_venda.data = fato_venda.data
  GROUP BY fato_venda.data
  ORDER BY valor DESC
   LIMIT 20



Obrigado a Todos,

Clifor Travaini.
Eduardo Alves
Gestor de TI e Segurança de Dados
Tel: (11) 8400-0224 (TIM) – Nextel: Id: 5 * 4522
email: analista@slords.com.br skype: analista.slords
www.slords.com.br

Haroldo

  • Expert
  • *****
  • Mensagens: 6262
  • Conhecimento diminui limitações.△TFA△
    • Infinitus Web Gestão Empresarial/Gestão ITIL/Consultoria Scriptcase
Re: Limitar o Nr de linhas retornadas pelo Sql
« Responder #17 Online: Dezembro 01, 2010, 10:51:44 am »
o LIMIT já é utilizado no select principal da aplicação, por isso você não cosegue utiliza-lo, uma das saídas é a view, que não vejo problema em usar where dinamicamente.

Uma outra sugestão que me surgiu agora seria:

Select campos tabela_principal where id in (select id where condição limit 20)

deve funcionar.



« Última modificação: Dezembro 01, 2010, 11:00:21 am por Harold »

giroleti

  • Novato
  • *
  • Mensagens: 2
Re:Limitar o Nr de linhas retornadas pelo Sql
« Responder #18 Online: Novembro 15, 2012, 05:25:14 pm »
Olá.
Tive este problema utilizando o PostgreSQL e resolvi colocando um artifício no próprio SQL. Segue exemplo:

SELECT * FROM customer WHERE id IN ( SELECT id FROM custumer ORDER BY id DESC LIMIT 5)

O exemplo acima é uma forma de driblar o 'asc' colocado no final do select. Notem que dei uma ordem para pegar somente os últimos 5 registros. Dessa forma pode-se utilizar em qualquer comando select da aplicação sem criar monstros como tabelas auxiliares.
Espero ter ajudado os amigos.
Att.

Bernhard

  • Administrator
  • Expert
  • *****
  • Mensagens: 1619
Re:Limitar o Nr de linhas retornadas pelo Sql
« Responder #19 Online: Novembro 26, 2012, 01:12:39 pm »
Boa tarde,

Apenas complementando as sugestões dos colegas, você pode desabilitar a paginação, e definir a quantidade de linhas por página para ZERO nas configurações da Grid.

Outra maneira é criar uma VIEW para limitar os registros retornados.

att,
Bernhard Bernsmann

Marcio

  • Novato
  • *
  • Mensagens: 1
    • Email
Re:Limitar o Nr de linhas retornadas pelo Sql
« Responder #20 Online: Agosto 13, 2013, 04:55:00 pm »
Estou o mesmo problema de limitar em 10 registros maiores.

Vc conseguiu alguma maneira no scriptcase?

Almeida

  • Expert
  • *****
  • Mensagens: 610
    • Email
Re:Limitar o Nr de linhas retornadas pelo Sql
« Responder #21 Online: Agosto 13, 2013, 07:35:22 pm »
Estou o mesmo problema de limitar em 10 registros maiores.

Vc conseguiu alguma maneira no scriptcase?

Cara eu uso no MYSQL assim:

SELECT
 Bla,
 BlaBla,
 BlaBlaBla
FROM table
WHERE algum se tiver
ORDER BY algum se quizer
GROUP BY Algum se quizer
LIMIT 0, Quantidade a limitar. -> Ira limitar do registro 0 até o escolhido.

Att.
Eliezer Almeida
eliezeralmeidago@hotmail.com
www.infotecsoft.com.br - Modernidade e Eficiência