Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Помогите с запросом на диапазоны дат плз  [new]
_Polina_
Member

Откуда: Санкт-Петербург
Сообщений: 171
Дано: таблица покупателей со скидками. Данные о скидках заносятся периодически:

Дата Код покупателя Скидка
1.05.14 2345 8%
15.06.14 2345 6%
19.10.14 2345 7%


Таблица продаж

Дата продажи Сумма Код покупателя
15.4.14 2345 100
3.5.14 2345 100
14.6.14 2345 120
17.06.14 2345 200
15.10.14 1111 400


Помогите плз написать запрос, который к таблице продаж приписал бы скидку, действующую на дату продажи. В таблице продаж скидка для 1-й строки должна быть 0% (дата 15,4,14 раньше, чем дата с первой скидкой для этого покупателя), для последней строки скидка также 0%, так как этого покупателя вообще нет в таблице со скидками.
26 ноя 14, 11:46    [16906841]     Ответить | Цитировать Сообщить модератору
 Re: Помогите с запросом на диапазоны дат плз  [new]
guest123456
Guest
_Polina_,

isnull((select top 1 Скидка from Скидки where Скидки.[Код покупателя] = [Таблица продаж].[Код покупателя]  and Скидки.[Дата] <= [Таблица продаж].[Дата продажи] order by Скидки.[Дата] desc), 0)
26 ноя 14, 11:57    [16906914]     Ответить | Цитировать Сообщить модератору
 Re: Помогите с запросом на диапазоны дат плз  [new]
_Polina_
Member

Откуда: Санкт-Петербург
Сообщений: 171
guest123456, гениально, спасибо.
А я с joinами мудрила... Про top 1 и не подумала.
26 ноя 14, 12:07    [16907030]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить