2017-03-28 16 views
0

まず、NHibernateを初めて使用しています。ここに私の問題があります:選択時のNHibernateのカウント平均

私はデータベースに格納されているデータを持っていて、DBの各サンプルは、属性の日付と数値を持っています。今私は知っている、私はいくつかのデータを選択し、各3秒間隔で平均(数値の)を数えることができる方法はありますか?

私はQueryOverを使用しています。

ありがとうございました。

+0

これが役立ちます。 http://stackoverflow.com/q/6931292/5779732、http://stackoverflow.com/q/29565783/5779732、http://www.andrewwhitaker.com/blog/2014/08/15/queryover-series-パート7使用SQL関数/ –

答えて

1

これは簡単なグループです。しかし、私はを使用しません。 クエリ次変換してみてください。大きなデータセットで

var test = session.Query<Entity>() 
    .GroupBy(e => 
     new 
     { 
      e.YourDate.Date, 
      e.YourDate.Hour, 
      e.YourDate.Minute, 
      threeSec = e.YourDate.Second/3 
     }) 
    .Select(g => 
     new { 
      g.Key.Date, 
      g.Key.Hour, 
      g.Key.Minute, 
      g.Key.threeSec, 
      avg = g.Average(e => e.YourNumeric) 
     }) 
    .ToList(); 

、それが悪い実行することができます。サーバーは、このようなグループのインデックスを使用することはほとんどありません。

関連する問題