![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Помогите составить запрос [D7, Firebird]
abhtr © (2007-11-29 14:26:00)Существуют две таблицы связанные отношением Master - Detail:
Таблица товаров: Goods
Goods_ID
Goods_Name
и таблица с историей цен: Price
Price_ID
Price_Goods_ID – для связки с Goods
Price_Date
Price_Value
Надо сделать выборку товаров с ценами какие они были в заданном периоде: DtBeg, DtEnd, или "ближайшая" цена до начала заданного периода. Т.е. надо учитывать, что есть товары, у которых последняя измененная цена может быть до начала заданного периода.
Sergey13 (2007-11-30 09:58:00) [1]> [5] Johnmen © (30.11.07 09:51)
Это, ИМХО, скорее ошибка вопроса, а не запроса. 8-)
Johnmen (2007-11-30 09:51:00) [2]
> Sergey13 © (29.11.07 15:12) [4]
> > [3] Johnmen © (29.11.07 15:01)
> Как это?
> с ценами какие они были в заданном периоде: DtBeg, DtEnd,
Sergey13 (2007-11-29 15:12:00) [3]> [3] Johnmen © (29.11.07 15:01)
Как это?
Johnmen (2007-11-29 15:01:00) [4]
> Sergey13 © (29.11.07 14:40) [1]
Первое условие из "или" отсутствует :)
abhtr (2007-11-29 14:58:00) [5]Большое СПАСИБО!
Вроде получилось.
Sergey13 (2007-11-29 14:40:00) [6]Примерно так можно. Нижнее значение периода ненужно
select Goods_Name,Price_Value
from Goods G,Price P1
where G.Goods_ID=P1.Price_Goods_ID
and P1.Price_Date=(select max(Price_Date) from Price P2 where P2.Price_Goods_ID=P1.Price_Goods_ID and P2.Price_Date<:DtEnd)