|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
17.01.2016, 15:18 | #1 |
Форумчанин
Регистрация: 28.02.2009
Сообщений: 302
|
Найти последнюю имеющуюся запись
Всем привет.
Можете помочь написать запрос выводящий дату платежа, сумму затраченных средств в рублях, учесть что в таблице курсов может не быть записи на дату платежа.Тогда взять курс на последнюю имеющуюся запись. Таблица покупок с указанием суммы валют t_pays id date curr_id sum_qty 1 2011-04-04 1 5 2 2011-04-05 2 10 3 2011-04-06 3 20 таблица курсов валют по отношению к рублю t_course id cur_id date curs 1 1 2011-04-04 1 2 2 2011-04-04 30 3 3 2011-04-04 40 4 1 2011-04-05 1 5 2 2011-04-05 30 6 3 2011-04-05 41 7 2 2011-06-06 28 таблица названий валют t_curr_name id name 1 rur 2 usd 3 eur |
17.01.2016, 16:22 | #2 |
Участник клуба
Регистрация: 21.10.2015
Сообщений: 1,361
|
Вложенный запрос надо делать. А еще лучше функцию написать, если субд позволяет.
|
17.01.2016, 16:23 | #3 |
Старожил
Регистрация: 25.02.2007
Сообщений: 4,158
|
Код:
Последний раз редактировалось ADSoft; 17.01.2016 в 16:25. |
17.01.2016, 16:32 | #4 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
Так не пойдет. Во вложенном найти макс дату не большую нужной и потом из записи с этой датой еще курс выдернуть. Еще хуже когда по одной дате больше одного куса, такого не встречал ибо не понятно что с ними делать
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
18.01.2016, 16:03 | #5 |
Форумчанин
Регистрация: 12.02.2011
Сообщений: 808
|
так пойдет??
Код:
типо такого Код:
Терпение!Дежурный экстрасенс скоро свяжется с вами!
Последний раз редактировалось Dvoishnik; 18.01.2016 в 16:32. |
18.01.2016, 16:27 | #6 | |
Участник клуба
Регистрация: 21.10.2015
Сообщений: 1,361
|
зачем 2 раза по платежам гонять?
Цитата:
Последний раз редактировалось come-on; 18.01.2016 в 16:36. |
|
18.01.2016, 16:47 | #7 |
Форумчанин
Регистрация: 12.02.2011
Сообщений: 808
|
а как по другому то сделать??
вы меня не правильно поняли. посмотрите внимательно пример который я привел Код:
Терпение!Дежурный экстрасенс скоро свяжется с вами!
|
18.01.2016, 17:00 | #8 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
Если внутренним соединением, то примерно так. Наименования валют не брал, не проблемно их присоединить
Код:
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
18.01.2016, 17:07 | #9 |
Форумчанин
Регистрация: 12.02.2011
Сообщений: 808
|
не понят как это работать будет откуда взялась таблица t?
Терпение!Дежурный экстрасенс скоро свяжется с вами!
|
18.01.2016, 17:16 | #10 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
почитайте про синонимы.
Код:
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Как получить последнюю запись согласно условию без VBA | Shavminator | Microsoft Office Excel | 5 | 09.11.2014 20:26 |
Запрос на последнюю запись в столбце | ins813 | БД в Delphi | 20 | 12.10.2012 15:05 |
переход на последнюю запись при открытии формы | Ja-De | Microsoft Office Access | 2 | 18.01.2010 14:18 |
Как выбрать последнюю запись в таблице? | Yur@ | БД в Delphi | 11 | 30.12.2009 18:11 |
Как найти последнюю запись в таблице? | dsapa | Microsoft Office Excel | 2 | 21.07.2009 16:37 |