Fórum SQL #185729
02/10/2003
0
Eu tenho uma tabela com 50 registros, digamos que o usuários quer realizar uma pesquisa entre os registros 10 a 25...
Como monto uma SQL para este tipo de consulta?
Marcela
Curtir tópico
+ 0Posts
02/10/2003
Marcelo.c
Gostei + 0
02/10/2003
Edineidaniel
No OnClick do Button
query1.close;
query1.SQL.Clear;
query1.sql.add(´select * from tabela´);
query1.sql.add(´where campo >= :cod1 and campo<=:cod2´);
query1.sql.add(´order by datainicial´);
query1.params[0].AsInteger := StrToInt(Edit1.text);
query1.params[1].AsInteger := StrToInt(Edit2.text);
query1.open;
query1.active:=true;
Ai é so listas esta consulta em um grid...
walew
t+
Edinei
Gostei + 0
02/10/2003
Marcela
Gostei + 0
02/10/2003
Edineidaniel
Qual é o campo chave de sua tabela....????
Ou melhor quais os campos que vc possui em sua tabela...????
que sabe com esses dados adicionais podemos formular um SQL diferente...
t+
Edinei
Gostei + 0
02/10/2003
Marcela
Cod da estação, que não é sequencial (número grande e varialvel)
Data e Hora, estes são chaves primárias
O restante são dados de leitura que não me interessam...
Gostei + 0
02/10/2003
Edineidaniel
Deve a haver algum dados importante em meio a sua tabela para q vc queira selecionar dados do meio...
Não encontrei outra maneira de te ajudar...
quem sabe tente o código acima, mas com o campo data ou hora, tanto faz, é só mudar o valor dos parâmetros....
t+
Edinei
Gostei + 0
02/10/2003
Fava
CREATE PROCEDURE RETORNA_X_REGISTROS (NUM_ROWS INTEGER)
RETURNS (lista de campos que voce quer que retorne)
AS
declare variable counter integer;
begin
counter = 0;
for select (campos que voce quer que retorne)
from Sua_Tabela
order by campo_chave_primária
into
:Variaveis de retorno que recebem o valor dos campos acima
do begin
if (:counter >= :NUM_ROWS) then exit;
suspend;
counter = counter + 1;
end
end
PS: O Firebird e o Interbase 6.5 possuem clausulas especiais para o SELECT que permitem a paginação dos dados retornados
Gostei + 0
03/10/2003
Marcelo.c
http://delphiforum.icft.com.br/forum/viewtopic.php?t=23490
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)