Главная страница
    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.45 MB
Время: 0.029 c
14-84601
Far
2003-06-08 17:50
2003.06.26
procedure


14-84588
Igor__
2003-06-08 12:19
2003.06.26
Стеганография


3-84015
anton_cor
2003-05-30 22:28
2003.06.26
Сделать из массива DataSource


3-83984
*pavel
2003-05-30 10:47
2003.06.26
Документация на Oracle (от А до Я)


14-84554
Leon_M@ni@k
2003-06-07 17:57
2003.06.26
СРОЧНО СРОЧНО - считанные Часы остались - помогите с отбором инфы





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский