Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Суммирование данных столбца в BDE [D6, Paradox]


Ahmad K ©   (2003-03-06 01:26:00) 

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


MsGuns   (2003-03-06 23:42:00) [1]

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

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


Pat   (2003-03-06 20:50:00) [2]

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


Anatoly Podgoretsky   (2003-03-06 20:47:00) [3]

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


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

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


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

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

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


theodor_iv   (2003-03-06 06:30:00) [6]

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")


shenvg   (2003-03-06 01:43:00) [7]

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


mike-d   (2003-03-06 01:38:00) [8]

см. BDE - HELP - Local SQL


Наверх

Титульная страница Поиск, карта сайта Написать письмо