0

私はLINQを初めて使用し、次のコードの翻訳に困惑しています。現在、SQLデータベースのフロントエンドを作成しています。ID値のリスト(electrolyte_id)を提供するSQLビューがあります。リストは電解質ID値でグループ化され、電解質_max_date(ビュー)の各プロセスタンクID値(process_tanks_id)の最大日付でフィルタリングされます。以下はSQLクエリです。

SELECT electrolyte.electrolyte_id, electrolyte.process_tanks_id, electrolyte.date_active
FROM   electrolyte_max_date INNER JOIN electrolyte ON 
           electrolyte_max_date.max_date = dbo.electrolyte.date_active AND 
           electrolyte_max_date.process_tanks_id = electrolyte.process_tanks_id

LINQで電解質_max_dateクエリを変換することができました。以下はコードです:

var filter_electrolyte_list = from tbl_electrolyte in _ds.electrolyte.AsEnumerable()
                              group tbl_electrolyte by
                                     tbl_electrolyte.process_tanks_id into tankgroup
                              select new
                              {
                                  tank = tankgroup.Key,
                                  maxdate = tankgroup.Max(tbl_electrolyte =>
                                                        tbl_electrolyte.date_active)
                               };

私の質問は次のとおりです。filter_electrolyte_listLINQクエリを別のLINQクエリの電解質テーブルに結合するにはどうすればよいですか?SQLビューで得られるのと同じ結果を複製する必要があります。

助けてくれてありがとう。ジョナサン

4

1 に答える 1

0

I feel like what you want to do is Union two Linq Queries?

var filter_electrolyte_list = (from tbl_electrolyte in _ds.electrolyte.AsEnumerable()
                          group tbl_electrolyte by
                                 tbl_electrolyte.process_tanks_id into tankgroup
                          select new
                          {
                              tank = tankgroup.Key,
                              maxdate = tankgroup.Max(tbl_electrolyte =>
                                                    tbl_electrolyte.date_active)
                           }).Union( //New Linq Query that has the same select statement);

Make sure the selected variables in each query match just like a regular SQL Union.

于 2012-05-16T13:16:14.703 に答える