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

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

Помогите составить запрос [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)


Наверх

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