Retornar número limitado de resultados na query
Olá pessoal,
Gostaria de saber se alguém sabe algum jeito de retornar um número limitado de registros
em uma consulta. O google me ajudou com o "select first 50 * from tabela", mas desta forma
dá problema com o componente do Delphi que uso.
Agradeço se alguém souber de alguma função.
Gostaria de saber se alguém sabe algum jeito de retornar um número limitado de registros
em uma consulta. O google me ajudou com o "select first 50 * from tabela", mas desta forma
dá problema com o componente do Delphi que uso.
Agradeço se alguém souber de alguma função.
Paulo Vinck
Curtidas 0
Respostas
William
23/08/2012
Qual componente de acesso vc está usando no Delphi?
Se for ClientDataSet acho q tem como informar o número de registros...
Se for ClientDataSet acho q tem como informar o número de registros...
GOSTEI 0
Deivison Melo
23/08/2012
Tente utilizando a opção FIRST x, isso vai lhe retornar os x primeiros resultados da consulta:
Exemplo:
SELECT FRIST 5 nome, endereco FROM usuario
Retornar o nome e endereço dos 5 primeiros usuários.
faça com "FIRST 1 " (não sei se o "1" é opcional nesse caso, nunca usei assim).
Se não der também, tente com o "ROWS n", essa opção é a última na consulta, fica depois do where e é seguida de um inteiro indicando quantas linhas a consulta deve retornar, ele vai retornar as n primeiras linhas da consulta.
SELECT nome, endereco FROM usuario WHERE idade = '20' ROWS 5
vai retornar os 5 primeiros resultados, faça com ROWS 1 é retornará apenas uma linha
Créditos:
http://br.answers.yahoo.com/question/index?qid=20110224081622AApzKMV
Exemplo:
SELECT FRIST 5 nome, endereco FROM usuario
Retornar o nome e endereço dos 5 primeiros usuários.
faça com "FIRST 1 " (não sei se o "1" é opcional nesse caso, nunca usei assim).
Se não der também, tente com o "ROWS n", essa opção é a última na consulta, fica depois do where e é seguida de um inteiro indicando quantas linhas a consulta deve retornar, ele vai retornar as n primeiras linhas da consulta.
SELECT nome, endereco FROM usuario WHERE idade = '20' ROWS 5
vai retornar os 5 primeiros resultados, faça com ROWS 1 é retornará apenas uma linha
Créditos:
http://br.answers.yahoo.com/question/index?qid=20110224081622AApzKMV
GOSTEI 0
Paulo Vinck
23/08/2012
Olá galera,
Tanto o first como o rows (ótimas funções) retornam os "n" primeiros registros da tabela.
No meu caso preciso retornar os "n" últimos.
Estou usando um DataSource para carregar a grid.
Obrigado pelas dicas até então!!
Tanto o first como o rows (ótimas funções) retornam os "n" primeiros registros da tabela.
No meu caso preciso retornar os "n" últimos.
Estou usando um DataSource para carregar a grid.
Obrigado pelas dicas até então!!
GOSTEI 0
William
23/08/2012
Nesse caso vc pode efetuar a mesma consulta mas usando no final da instrução SQL a cláusula "ORDER BY DESC"(descendente), ela vai ordenar de forma decrescente sua consulta.
GOSTEI 0
Paulo Vinck
23/08/2012
Olá pessoal,
consegui resolver meu problema com dois datasources, um para carregar a grid e outro para
carregar os dados de cada registro para edição.
todos estes códigos que me passaram foram uteis!!
Muito obrigado.
consegui resolver meu problema com dois datasources, um para carregar a grid e outro para
carregar os dados de cada registro para edição.
todos estes códigos que me passaram foram uteis!!
Muito obrigado.
GOSTEI 0