*VC_DEVID* *DT_LODDATE* *C_INPUTMODE* *DT_ALTERDATE*
DEVC109 29/Apr/2013 12:50:29 R 30/Apr/2013 12:50:29
DEVC110 29/Apr/2013 12:50:29 M 29/Apr/2013 12:50:29
DEVC111 29/Apr/2013 12:50:29 M 28/Apr/2013 12:50:29
DEVC112 29/Apr/2013 12:50:29 M 27/Apr/2013 12:50:29
DEVC109 29/Apr/2013 12:50:29 R 26/Apr/2013 12:50:29
这是我的Datatable返回的内容.. 我需要在字符串变量
上选择c_INPUTMODE='C'
的最大变化
请帮助
答案 0 :(得分:2)
您可以将LINQ to DataSet/DataTable用于此目的,例如:
DateTime maxDate = dt.AsEnumerable()
.Where(r => r.Field<string>("C_INPUTMODE") == "C")
.Max(r => r.Field<DateTime>("DT_ALTERDATE"));
或者
DateTime maxDate = dt.AsEnumerable()
.Where(r => r.Field<string>("C_INPUTMODE") == "C")
.Select(r => r.Field<DateTime>("DT_ALTERDATE"))
.Max();
如果您的列C_INPUTMODE
属于char
类型,则您的where子句应为:
.Where(r=> r.Field<char>("C_INPUTMODE") == 'C')
答案 1 :(得分:0)
SELECT dt.*
FROM
dt,
( SELECT max(dt_alterdate)
FROM dt
where c_inputmode='C')
AS maxdate
WHERE maxdate.vc_devid=dt.vc_devid