Re[4]: просуммировать за день
От: prg  
Дата: 03.11.04 14:12
Оценка: 6 (1)
Здравствуйте, Рома Мик, Вы писали:

РМ>Здравствуйте, wildwind, Вы писали:


РМ>>>За один день я такое сделал, это было несложно, но как сделать за несколько дней?

W>>Добавь "GROUP BY date, id, buysell"
W>>В WHERE расширь диапазон "datetime between ... and ..."
РМ>Не выйдет вроде бы, у меня там подзапросы суммирующие за день... тое сть что-то вроде
РМ>
РМ>select 
РМ>id,
РМ>buysell=1
РМ>amount = (select sum(amount) where buysell=1 and datetime >= :report_date and datetime < :report_date + 1),
РМ>time1 = (select min(datetime) where buysell=1 and datetime >= :report_date and datetime < :report_date + 1),
РМ>...
РМ>from paper (табличка где все возможные бумажки)
РМ>where amount <> 0 
РМ>union
РМ>тоже самое но для buysell=-1
РМ>


РМ>Или я чего-то не понял в предложении... (я в базах данных так и не рублю толком, все не досуг теорией овладеть, не так часто и надо.)


а если так попробовать переделать так
select 
trunc(datetime),
id,
buysell,
sum(amount) ,
min(datetime) ,
max(datetime) ,
from paper (табличка где все возможные бумажки)
where amount <> 0 
and buysell=1 and datetime >= :report_date and datetime < :report_date + 30
group by trunc(datetime)

union

select 
trunc(datetime),
id,
buysell,
sum(amount) ,
min(datetime) ,
max(datetime) ,
from paper (табличка где все возможные бумажки)
where amount <> 0 
and buysell=-1 and datetime >= :report_date and datetime < :report_date + 30
group by trunc(datetime)




W>>P.S. Биржевые котировки, что ли?

РМ>Биржевые операции, торговля бумажками
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.