Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Выбор периодики [D5, Oracle]


MaximusM ©   (2002-04-29 11:23:00) 

Уважаемые мастера, если можете подскажите.
Проблема: существуют 2 справочника (валюты Val, курсы валют CursVal), связанные Val.Rn = CursVal.Val.
Каким образом с помощью SQL запроса можно получить последний курс какой-либо валюты на определенную дату.
Заранее спасибо.


MaximusM   (2002-04-29 15:48:00) [1]

TO 2amamed_3071 © (29.04.02 11:46)
Спасибо.


roottim   (2002-04-29 13:43:00) [2]

2amamed_3071 © (29.04.02 11:46)
групповая операция с багом
inner join появился только в 9i... в8ке объединяются подругому

навскидку м предлжить...
select v.name, c.curs, c.cursdate
from val v, cursval c
where v.rn = c.val and
c.cursdate = (select max(t.cursdate) from cursval t where t.cursdate <= :pDate)


MaximusM   (2002-04-29 11:47:00) [3]

"Последний" означает, что если на данное число курс не занесен, то берется предшествующий курс.


amamed_3071   (2002-04-29 11:46:00) [4]

select val,kurs from CursVal
inner join
(Select max(data) data,val from CursVal
where data<=:Date group by val) md
on md.data=CursVal.data and CursVal.val=md.val


Johnmen   (2002-04-29 11:43:00) [5]

Указать в запросе в условиях определенную дату и выбрать последний курс :)
(Что значит последний - неясно...)


Наверх

Титульная страница Поиск, карта сайта Написать письмо