Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.06.26;
Скачать: CL | DM;

Вниз

Подскажите алгоритм   Найти похожие ветки 

 
NataliK   (2003-06-02 11:35) [0]

Добрый день!
Проблема такова есть Парадоксовская база
F1 F2 f3
6 5 (5+3)*X
6 3 (5+3)*X
8 2 (2+1)*Y
8 1 (2+1)*Y
что бы определить F3 надо знать сумму f2 по одной F1.
Школьнай вопрос где лучше хранить эту сумму f2 а запомнить ее наверное надо Получить ее я расчитываю через SQL запрос.


 
McSimm2   (2003-06-02 11:39) [1]

А почему результат вычисления нельзя прямо в поле f3 сохранить - высчитывай и записывай...


 
Sandman25 ©   (2003-06-02 11:42) [2]

Если сумму нужно именно хранить, то напрашивается отдельная таблица
типа
f1 f2
6 8
8 3
А если извлекать динамически, то
select sum(f2), f1
from t1
group by f1


 
Sandman25 ©   (2003-06-02 11:45) [3]

McSimm2 (02.06.03 11:39)

Тогда при изменении F2 в одной записи придется изменять F3 в куче записей с тем же id из F1. Что не есть хорошо, особенно при многопользовательской работе. Нет нормализации.


 
NataliK   (2003-06-02 11:50) [4]

Можно, но я запуталась < т.е
Я должна пробежаться по Таблице выполнить Sql запрос и посчитать F3 . Мне кажется, можно как-то проще.Может с Lookup
посчитать в цикле или еще как-нибудь


 
Sandman25 ©   (2003-06-02 11:59) [5]


var p: pointer;
begin
with query1 do
begin
close;
sql.text := "select count(*) from table1 where f1 = :f1";
prepare;
with table1 do
begin
p := getbookmark;
disablecontrols;
try
first;
while not eof do
begin
query.params[0].asInteger := table1f1.asInteger;
query.open;
... // обработка значения
query.close;
next;
end;
finally
gotobookmark(p);
enablecontrols;
end;
end;


 
NataliK   (2003-06-02 12:04) [6]

Спасибо! Сейчас попробую с закладочками,может именно этот выход подойдет



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

Текущий архив: 2003.06.26;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.015 c
1-84202
Mortal
2003-06-12 13:33
2003.06.26
TListView


7-84771
Anonimus
2003-04-17 10:45
2003.06.26
Перезагрузка......


14-84526
Думкин
2003-06-04 05:37
2003.06.26
Про опять - Европу и иже.


11-84061
Alexander
2002-09-22 16:14
2003.06.26
Пытаюсь убрать у окна иконку в заголовке (ну это как тип Dialog


14-84610
Igor
2003-06-09 13:02
2003.06.26
Длинные строки (>=1Gb)