Вниз
Скачать: CL | DM;

Суммирование данных столбца в BDE   Найти похожие ветки 

 
Ahmad K   (2003-03-06 01:26) [0]

собственно сабж...


 
mike-d ©   (2003-03-06 01:38) [1]

см. BDE - HELP - Local SQL


 
shenvg ©   (2003-03-06 01:43) [2]

либо суммирующим запросом на SQL
либо циклом по всему датасету....


 
theodor_iv   (2003-03-06 06:30) [3]

2 shenvg:
> либо циклом по всему датасету....

Главное за время цикла не состариться... :)

Я использую такую функцию:

function SQLCalc(const Func, Field, Table: string): Double;
var
Q: TQuery;
begin
Q := TQuery.Create(nil);
try
Q.SQL.Text := Format("SELECT %s(T."%s") FROM "%s" T", [ Func, Field, Table ]);
Q.Open;
Result := Q.Fields[0].AsFloat;
finally
Q.Free
end;
end;


Например: SQLCalc("SUM", "ACCT_NBR", ":DBDEMOS:CLIENTS.DBF")


 
Mike Kouzmine   (2003-03-06 08:57) [4]

2 shenvg:
> либо циклом по всему датасету....

> Главное за время цикла не состариться... :)
примерно 100 записей в секунду на 10 мб


 
Ahmad K   (2003-03-06 20:37) [5]

Ребята, а если я использую TTable и базы Paradox?


 
Anatoly Podgoretsky ©   (2003-03-06 20:47) [6]

Ну сказали же в этом случае циклом по всему набору данных и суммируй.


 
Pat ©   (2003-03-06 20:50) [7]

table.first;
sum:=0;
while not table.eof do
begin
sum:=sum+table.fieldbyname("MyField").value;
table.next
end;
caption:=***tostr(sum)


 
MsGuns ©   (2003-03-06 23:42) [8]

>Ahmad K (06.03.03 20:37)
>Ребята, а если я использую TTable и базы Paradox?

Ну и спользуй на здоровье ! А запрос будет сам по себе считаться. Можешь написать процу как сказал theodor_iv (06.03.03 06:30) и вызывать ее в обработчиках типа AfterPost/Insert/Delete/Refresh. Если табла большая и этот запрос тормозит, то сделай по кнопке.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.016 c
3-76370
denis24
2003-03-05 17:33
2003.03.24
Tfield


9-76249
Константин
2002-10-25 11:32
2003.03.24
Текстовой отладчик для Delphi


1-76457
merlot
2003-03-12 10:45
2003.03.24
Шифрование данных


3-76350
baracuda
2003-03-04 12:04
2003.03.24
DBgrid


1-76434
mmmh
2003-03-07 23:40
2003.03.24
Подскажите как правильно считать время: есть 3 лабела




   Наверх