Форум: "Базы";
Текущий архив: 2003.05.26;
Скачать: [xml.tar.bz2];
ВнизСВЯЗЫВАНИЕ ДВУХ ТАБЛИЦ PARADOX Найти похожие ветки
← →
prof (2003-05-05 10:14) [0]Помогите. Нужно взяь данные из 10 строк (в каждой строке только одна ячейка) таблици1 и суммировав их вставить в одну из строк таблици2
← →
Соловьев (2003-05-05 10:39) [1]
with Table1 do
begin
Active := true;
First;
//Должен быть подключен индекс, который вынесет эти 10 строк вперед
Sum := 0;
Count := 0;
repeat
Inc(Count);
Sum := Sum + FieldByName("Sumfield").AsInteger;
Next;
until Count<=10;
end;
end;
With Table2 do
begin
Active := true;
Insert;
FieldByName("Sum").AsInteger := Sum;
Post;
end;
Но лучше что-бы ты с 10 как-то поределился, так как такой подход не верен и чреват... Лучше когда есть условие
← →
prof (2003-05-05 11:40) [2]Соловьев
Sorry, но я с базами в первый раз работаю так-что пожалуйста обьясните "//Должен быть подключен индекс, который вынесет эти 10 строк вперед"
Я взял упрощенную модель:
TAB1 TAb2
Sumfield Sum
22 490
222
123
123
так должно быть , но получается только
TAB2
Sum
22
,а если имеется в виду первичный(вторичный) индекс ,то с ним вообще не работает.
← →
Соловьев (2003-05-05 11:47) [3]тебе все записи нужно просумировать? или только часть удовлетворяющую условиям?
← →
prof (2003-05-05 11:53) [4]все
← →
Соловьев (2003-05-05 11:55) [5]
with Table1 do
begin
Active := true;
First;
Sum := 0;
while no Eof do
begin
Sum := Sum + FieldByName("Sumfield").AsInteger;
Next;
end;
end;
With Table2 do
begin
Active := true;
Insert;
FieldByName("Sum").AsInteger := Sum;
Post;
end;
← →
prof (2003-05-05 12:01) [6]все работает спасибо за подддержку
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2003.05.26;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.007 c