powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Значение на заданную дату
4 сообщений из 4, страница 1 из 1
Значение на заданную дату
    #39303210
Slant-shadow
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всем привет. Можете помочь написать запрос, с помощью которого можно получить значение курса для заданной валюты на заданную дату?
...
Рейтинг: 0 / 0
Значение на заданную дату
    #39303226
dmdmdm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Значение на заданную дату
    #39303313
Фотография Elic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Slant-shadowс помощью которого можно получить значение курса для заданной валюты на заданную дату? http://www.bugtraq.ru/forum/faq/general/smart-questions.html] RTFM where_clause (FAQ)
...
Рейтинг: 0 / 0
Значение на заданную дату
    #39303363
stax..
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Slant-shadow,

на date '2016-09-01')

Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
  1  with v as (
  2  select 'USD' cur,date '2016-01-01' dat, 20 val from dual union all
  3  select 'USD' cur,date '2016-02-01' dat, 21 val from dual union all
  4  select 'USD' cur,date '2016-05-01' dat, 22 val from dual union all
  5  select 'USD' cur,date '2016-09-01' dat, 25 val from dual union all
  6  select 'EUR' cur,date '2016-01-01' dat, 30 val from dual union all
  7  select 'EUR' cur,date '2016-02-10' dat, 31 val from dual union all
  8  select 'EUR' cur,date '2016-07-25' dat, 32 val from dual union all
  9  select 'EUR' cur,date '2016-09-04' dat, 31 val from dual
 10  )
 11  select * from v
 12* where dat=(select max(dat) md from v v2 where v2.cur=v.cur and v2.dat<=date '2016-09-01')
SQL> /

CUR DAT             VAL
--- -------- ----------
USD 01.09.16         25
EUR 25.07.16         32



аналитекой
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
SQL> ed
Wrote file afiedt.buf

  1  with v as (
  2  select 'USD' cur,date '2016-01-01' dat, 20 val from dual union all
  3  select 'USD' cur,date '2016-02-01' dat, 21 val from dual union all
  4  select 'USD' cur,date '2016-05-01' dat, 22 val from dual union all
  5  select 'USD' cur,date '2016-09-01' dat, 25 val from dual union all
  6  select 'EUR' cur,date '2016-01-01' dat, 30 val from dual union all
  7  select 'EUR' cur,date '2016-02-10' dat, 31 val from dual union all
  8  select 'EUR' cur,date '2016-07-25' dat, 32 val from dual union all
  9  select 'EUR' cur,date '2016-09-04' dat, 31 val from dual
 10  )
 11  , v2 as (
 12  select v.*
 13   ,row_number() over (partition by cur order by dat desc) rn
 14  from v
 15  where v.dat<=date '2016-09-01')
 16  -----
 17* select * from v2 where rn=1
SQL> /

CUR DAT             VAL         RN
--- -------- ---------- ----------
EUR 25.07.16         32          1
USD 01.09.16         25          1

SQL>


ин
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
  1  with v as (
  2  select 'USD' cur,date '2016-01-01' dat, 20 val from dual union all
  3  select 'USD' cur,date '2016-02-01' dat, 21 val from dual union all
  4  select 'USD' cur,date '2016-05-01' dat, 22 val from dual union all
  5  select 'USD' cur,date '2016-09-01' dat, 25 val from dual union all
  6  select 'EUR' cur,date '2016-01-01' dat, 30 val from dual union all
  7  select 'EUR' cur,date '2016-02-10' dat, 31 val from dual union all
  8  select 'EUR' cur,date '2016-07-25' dat, 32 val from dual union all
  9  select 'EUR' cur,date '2016-09-04' dat, 31 val from dual
 10  )
 11  select * from v
 12* where (cur,dat) in (select cur,max(dat) from v v2 group by cur)
SQL> /

CUR DAT             VAL
--- -------- ----------
EUR 04.09.16         31
USD 01.09.16         25



.....
stax
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Значение на заданную дату
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]