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

Откуда:
Сообщений: 79
Здравствуйте коллеги. Помогите, пожалуйста, с запросом.

Есть таблица “Отгрузки”:
Номенклатура, Количество, Цена, Дата отгрузки

Пример: Перец зеленый, 2, 150, 07.02.2015
Перец зеленый, 3, 200, 14.04.2015

Есть вторая таблица “Цены”:
Дата Цены, Номенклатура, Цена

Пример: 03.02.2015, Перец зеленый, 150
06.03.2015, Перец зеленый, 200

Как сделать, чтоб цена в таблице Отгрузки автоматом подтягивалась по дате отгрузки по принципу: Цена = Цена на максимальную дату цены этой номенклатуры между датой отгрузки и максимальной датой цены номенклатуры в таблице цены. (Дата отгрузки >= макс даты цены в таблице “Цены”)?
13 апр 15, 13:46    [17507985]     Ответить | Цитировать Сообщить модератору
 Re: Подстановка актуальной цены в mssql 2008 R2  [new]
Добрый Э - Эх
Guest
ondorsal,

Если правильно понял, то тынц
13 апр 15, 13:53    [17508021]     Ответить | Цитировать Сообщить модератору
 Re: Подстановка актуальной цены в mssql 2008 R2  [new]
Jaffar
Member

Откуда:
Сообщений: 633
ondorsal,
select a.*, b.Price
from tla_Account a with(nolock)
outer apply(select top 1 b.*
			from tla_Balance b with(nolock)
			where
					b.IDA = a.ID
			order by b.Data desc /**/) b




Полюбите cross apply - и он ответит вам взаимностью.

Ну а если нужно сохранять данные - то сделать триггер на и таким же макаром сохранять значения из 1 таблички в другую.
13 апр 15, 13:56    [17508039]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить