Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 26.09.2008, 15:52   #1
Aleksandr
Форумчанин
 
Регистрация: 22.05.2007
Сообщений: 511
По умолчанию Суммирование столбца таблицы

Как проссумировать данные DBGrida по столбцу
Aleksandr вне форума Ответить с цитированием
Старый 26.09.2008, 19:59   #2
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

Элементарно.
Берем DataSource, из которого бурутся данные в грид, и делаем:
Код:
sum:=0;
DataSource.First;
while not DataSource.Eof do
begin
sum:=sum+DataSource.FieldByName('MyValue').Value;
DataSource.Next;
end;
mihali4 вне форума Ответить с цитированием
Старый 29.09.2008, 13:38   #3
Aleksandr
Форумчанин
 
Регистрация: 22.05.2007
Сообщений: 511
По умолчанию

Я делаю вот так
Код:
sum1:=0;
DataModule1.ADOTable1.First;
while not DataModule1.AdoTable1.Eof do
begin
sum1:=sum1+DataModule1.AdoTable1.FieldByName('sum').Value;
DataModule1.Adotable1.Next;
Label1:= sum1+DataModule1.AdoTable1.FieldByName('sum').Value;
end;
почему у меня суммирует последнюю строку два раза?
Aleksandr вне форума Ответить с цитированием
Старый 29.09.2008, 13:48   #4
_SERGEYX_
Участник клуба
 
Аватар для _SERGEYX_
 
Регистрация: 07.07.2007
Сообщений: 1,518
По умолчанию

А почему бы не написать
select sum(MyValue) from table
_SERGEYX_ вне форума Ответить с цитированием
Старый 29.09.2008, 13:53   #5
Aleksandr
Форумчанин
 
Регистрация: 22.05.2007
Сообщений: 511
По умолчанию

Можно поподробней. И если можно то с ADO, а то почему то с запросами в ADO у меня не получается.
Aleksandr вне форума Ответить с цитированием
Старый 29.09.2008, 14:19   #6
_SERGEYX_
Участник клуба
 
Аватар для _SERGEYX_
 
Регистрация: 07.07.2007
Сообщений: 1,518
По умолчанию

var aSum: double;
//**************
ADOQuery1.Close;
ADOQuery1.sql.clear;
ADOQuery1.sql.add('select sum(ИМЯ_ПОЛЯ) from ИМЯ_ТАБЛИЦЫ');
ADOQuery1.open;
aSum:=ADOQuery1.fields[0].asfloat;
Showmessage(floattostr(aSum));
_SERGEYX_ вне форума Ответить с цитированием
Старый 29.09.2008, 14:44   #7
Aleksandr
Форумчанин
 
Регистрация: 22.05.2007
Сообщений: 511
По умолчанию

Всем спасибо. Все получилось.
Aleksandr вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Суммирование ячеек с флажками 69angel69 Microsoft Office Excel 2 04.03.2008 18:23
Условное суммирование rexec Microsoft Office Excel 3 07.02.2008 18:20
Имя столбца Nurik Microsoft Office Excel 2 09.04.2007 09:31
сумма столбца zetrix БД в Delphi 1 01.11.2006 15:42