У меня есть эти 2 таблицы в SQL Server 2012 Получить значение ребенка на основе метки времени для каждого родителя
Для каждого родителя я хотел бы получить значение на основе самой последней временной отметки.
Это то, что у меня есть до сих пор, делая некоторые поиски, испытания и ошибки.
select m.id, m.Name, mmi.previousValue
from [ManualMeters] m
inner join
(
select mm.ManualMeterId, max(mm.Value) previousValue
from ManualMetersInput mm
--where mm.Timestamp = max(mm.Timestamp)
group by mm.ManualMeterId
having count(*) > 1
) mmi on (mmi.ManualMeterId = m.Id)
Так что я бы ожидать здесь, чтобы увидеть:
ID Name previousValue TimeStamp
1 Meter_1 5000 2016-03-19 12:00
2 Meter_2 3500 2016-03-18 12:15
Теперь это только показывает максимальные значения, но это не то, что мне нужно. Мне нужно значение из самой последней отметки времени.
Этот вопрос хороший вопрос: Вы утверждаете РСУБД * с версии *, вы предоставляете выборочные данные, вы показываете свои собственные усилия и вы заявляете ожидаемый выход. Стоит перемирие. ** НО **: Пожалуйста ** ** не ** публикуйте свои данные как изображение! Сделайте его copy'n'pasteable, лучше всего с помощью специальных инструкций 'CREATE TABLE' и' INSERT INTO'. – Shnugo