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

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

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 24.04.2012, 19:34   #1
Marina8
Пользователь
 
Регистрация: 05.12.2011
Сообщений: 17
По умолчанию Select+select

Код:
for j:=3 to 10 do
begin 
for i:=1 to 12 do
begin
AdoQuery8.Close;
ADOQuery8.SQL.Clear;
ADOQuery8.SQL.Add('UPDATE tab SET  Скользящее_среднее=') ;
ADOQuery8.SQL.Add('(1/2*(SELECT Сумма_вкладов_RUB from tab where id='+inttostr(i)+')') ;
ADOQuery8.SQL.Add('+(SELECT Сумма_вкладов_RUB from tab where id='+inttostr(i+1)+')') ;
ADOQuery8.SQL.Add('+(SELECT Сумма_вкладов_RUB from tab where id='+inttostr(i+2)+')')  ;
ADOQuery8.SQL.Add('+(SELECT Сумма_вкладов_RUB from tab where id='+inttostr(i+3)+')')   ;
ADOQuery8.SQL.Add('+1/2*(SELECT Сумма_вкладов_RUB from tab where id='+inttostr(i+4)+'))/4')  ;
ADOQuery8.SQL.Add('where Id='+inttostr(j));
AdoQuery8.ExecSQL;
ADOQuery8.SQL.Clear;
end;
end;
Селекты можно так складывать? Как в запросе организовывать цикл?
Marina8 вне форума Ответить с цитированием
Старый 24.04.2012, 19:56   #2
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,526
По умолчанию

Код:
select t0.id, ( 1/2* t0.sum_rub +t1.sum_rub +t2.sum_rub +t3.sum_rub +1/2* t4.sum_rub) /4
from tab as t0
inner join tab as t1 on t1.id =t0.id + 1
inner join tab as t2 on t2.id =t0.id + 2
inner join tab as t3 on t3.id =t0.id + 3
inner join tab as t4 on t4.id =t0.id + 4
1. полагать что данные заносяться в правильном порядке, и не будут удаляться (пропуск значений id) ОЧЕНЬ плохая практика. выполнять какие-либо рабочие расчеты опираясь на значения id не следует.
2. среднее не должно храниться в БД (его надо каждый раз рассчитывать при необходимости).
программа — запись алгоритма на языке понятном транслятору

Последний раз редактировалось evg_m; 24.04.2012 в 20:09.
evg_m на форуме Ответить с цитированием
Старый 24.04.2012, 20:10   #3
=master=
Форумчанин
 
Регистрация: 26.03.2012
Сообщений: 665
По умолчанию

Цитата:
Как в запросе организовывать цикл?
Про какой цикл речь?
=master= вне форума Ответить с цитированием
Старый 24.04.2012, 20:57   #4
Marina8
Пользователь
 
Регистрация: 05.12.2011
Сообщений: 17
По умолчанию

Цитата:
Сообщение от =master= Посмотреть сообщение
Про какой цикл речь?
Вот подробнее что я хочу сделать

http://programmersforum.ru/showthrea...17#post1028317

Код:
select t0.id, ( 1/2* t0.sum_rub +t1.sum_rub +t2.sum_rub +t3.sum_rub +1/2* t4.sum_rub)/4
from tab as t0
inner join tab as t1 on t1.id =t0.id + 1
inner join tab as t2 on t2.id =t0.id + 2
inner join tab as t3 on t3.id =t0.id + 3
inner join tab as t4 on t4.id =t0.id + 4
Код считает, только как мне его в свою таблицу вставить?
Marina8 вне форума Ответить с цитированием
Старый 24.04.2012, 21:24   #5
Marina8
Пользователь
 
Регистрация: 05.12.2011
Сообщений: 17
По умолчанию

578699789790706708-7

Последний раз редактировалось Marina8; 24.04.2012 в 21:45.
Marina8 вне форума Ответить с цитированием
Старый 22.05.2012, 18:34   #6
pr-11
 
Регистрация: 16.05.2012
Сообщений: 4
Вопрос

Цитата:
Сообщение от Marina8 Посмотреть сообщение
Вот подробнее что я хочу сделать

http://programmersforum.ru/showthrea...17#post1028317

Код:
select t0.id, ( 1/2* t0.sum_rub +t1.sum_rub +t2.sum_rub +t3.sum_rub +1/2* t4.sum_rub)/4
from tab as t0
inner join tab as t1 on t1.id =t0.id + 1
inner join tab as t2 on t2.id =t0.id + 2
inner join tab as t3 on t3.id =t0.id + 3
inner join tab as t4 on t4.id =t0.id + 4
Код считает, только как мне его в свою таблицу вставить?
какую именно таблицу?
дипломка на тему "Подбор Вакансии"
pr-11 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
В зависимости от выбора в Select изменить значения другого Select Tayfun HTML и CSS 3 18.08.2011 00:05
Value у Select java_91 JavaScript, Ajax 0 05.05.2011 18:52
Select t1.N,t1.FIO,(select t2.acc from t2 where t2.type=1) from t1,t2 mavlon_m SQL, базы данных 2 17.09.2009 15:28
Select LENA_M SQL, базы данных 7 27.05.2009 14:03
Передача значения в <select></select> kkkggg Gamedev - cоздание игр: Unity, OpenGL, DirectX 1 06.09.2007 00:26