使用c#,mysql中的linq查找最近插入日期的数据
我的mySql表中有一个“CommonData”表 我想使用linq从c#查询最新插入日期的“Id”列表。 i、 e.此处最新插入日期为“22-04-2013”,因此我应获得插入日期为“22-04-2013”的ID列表 我正在使用Linq使用c#,mysql中的linq查找最近插入日期的数据,c#,mysql,linq,C#,Mysql,Linq,我的mySql表中有一个“CommonData”表 我想使用linq从c#查询最新插入日期的“Id”列表。 i、 e.此处最新插入日期为“22-04-2013”,因此我应获得插入日期为“22-04-2013”的ID列表 我正在使用Linq 有些人认为我无法做到这一点。添加检索最长日期的子查询,然后在此日期进行筛选: var ids = ctx.CommonDatas .Where(c => c.InsertDate ==
有些人认为我无法做到这一点。添加检索最长日期的子查询,然后在此日期进行筛选:
var ids = ctx.CommonDatas
.Where(c => c.InsertDate ==
ctx.CommonDatas
.Max(c2 => c2.InsertDate)
)
.Select(c => c.Id);
添加检索最长日期的子查询,然后在此日期进行筛选:
var ids = ctx.CommonDatas
.Where(c => c.InsertDate ==
ctx.CommonDatas
.Max(c2 => c2.InsertDate)
)
.Select(c => c.Id);
简单的方法可能是使用降序排序
var result = CommonData.OrderByDescending(c=> c.InsertDate).Select(c => c.Id);
简单的方法可能是使用降序排序
var result = CommonData.OrderByDescending(c=> c.InsertDate).Select(c => c.Id);
我会把这个
ctx.CommonDatas.Max(c2=>c2.InsertDate)
从的中取出来,是的,不是的。是的,它可以更快地运行查询。不,您正在缓存最长日期,以便可以检索异步记录(最长日期可能会更改),并且您正在对数据库进行两次访问。我会将此ctx.CommonDatas.Max(c2=>c2.InsertDate)
从中取出,其中是和否。是的,它可以更快地运行查询。不,您正在缓存最长日期,以便可以检索异步记录(最长日期可能会更改),并且您正在访问数据库两次。