以下查询似乎工作得很好:
var query =
Session.Query<SomeEvent>()
.Where(
p =>
p.Timestamp >= from.Now
&& p.Timestamp <= to.Now
)
.GroupBy(x => x.Timestamp)
.AsEnumerable()
.Select(
x =>
new SomeEvent {Timestamp = x.Key, DisplayValue = x.Average(y => y.DisplayValue)})
.OrderBy(x => x.Timestamp);
如果在时间戳(日期时间)方面存在重复,则平均显示值。我只是好奇是否也可以根据“分辨率”(例如 30 分钟)对值进行平均?