次のようなデータを持つ DB テーブルがあります。
LINE | QTY | USERID | DATE
-----------------------------------------
1 | 5 | qb1 | 2015-03-02 11:23:25
2 | 1 | qb2 | 2015-03-02 18:24:03
3 | 3 | ch1 | 2015-03-03 05:38:49
1 | 2 | qb1 | 2015-03-03 08:47:02
2 | 4 | qb2 | 2015-03-03 14:01:31
3 | 2 | ch1 | 2015-03-03 21:11:53
1 | 4 | qb1 | 2015-03-04 09:34:04
2 | 5 | qb2 | 2015-03-04 15:29:27
3 | 1 | ch1 | 2015-03-04 19:28:33
ご覧のとおりLINE
、DB には 3 つの一意の値しかありません。すべての行の最新のレコードを選択するには、LINQ クエリが必要です。日付は任意の日付にすることができます。「DATE」フィールドに基づいて行の最新のステータスが必要なだけです。
現時点では、次のような非常に大まかなことを行っています。
var line1 = db.GetTable<lnk_sts>().Where(x=> x.LINE== 1).OrderByDescending(x => x.DATE).FirstOrDefault();
他の2についても同じです。私が必要とするのはlnk_sts
、より大きな日付を持つものだけのリストです。この場合:
LINE | QTY | USERID | DATE
---------------------------------------
1 | 4 | qb1 | 2015-03-04 09:34:04
2 | 5 | qb2 | 2015-03-04 15:29:27
3 | 1 | ch1 | 2015-03-04 19:28:33