求助LINQ语句按照时间查询
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了求助LINQ语句按照时间查询相关的知识,希望对你有一定的参考价值。
查询所有数据,如果有name有相同时,只取时间最大的一条
原生态linqvar query=(form n in cDataContext.View_hotmeter
where n.hisdate==(
from m in cDataContext.View_hotmeter
where m.name==n.name
select m.hisdate
).Max()
select new
n.name,
n.inT,
n.outT,
n.flow,
n.heat,
n.heatsum,
n.hisdate
)
下面是lamda版本
var query= cDataContext.View_hotmeter
.Where(n=>n.hisdate==(
cDataContext.View_hotmeter
.Where(m=>m.name==n.name)
.Select(m=>m.hisdate) .Max()
)
.Select (n=>new
n.name,
n.inT,
n.outT,
n.flow,
n.heat,
n.heatsum,
n.hisdate
)
);
不过你这个需求真的太蛋疼了 参考技术A 路过学习中.....本回答被提问者采纳
Linq语句查询
开发工具与关键技术:VS
作者:老岑
撰写时间:2019年4月3日
这个查询是需要添加数据库实体数据模型的,这个就不多讲了
Linq语句查询,目前的学习进度来说也就是我们的单表和多表查询。
它为匿名类型查询提供了一种很方便的方法,可用来将一组只读属性封装到单个对象中,而且还不需要先定义一个显式类型,因为它的类型名字直接由编译器生成,而且每一个属性的类型都是由编译器推断。
我们先试一下如何用linq语句查询。
var匿名类型的关键字,是定义数据类型的间接方式。
首先我们用中文来理解一下怎么去查询。
比如你要查某个学院有什么专业,
var ??(??代表一个变量)= from ?? in myModel.专业(在数据库里查找表)
select new(挑选你所需要的数据)
{
id=??。它的id
text=??。它的名字
}
看完这个之后我们用一个简单的例子来总结一下。
根据学院ID查询年级信息
public ActionResult SelectGradeByAcademeID(int AcademeID)【在学院ID里面找年级的信息】
{
var listGrade = (from tbGrade in myModel.SYS_Grade
join tbAcademe in myModel.SYS_Academe on tbGrade.AcademeID equals tbAcademe.AcademeID
where tbGrade.AcademeID == AcademeID
select new
{
id = tbGrade.GradeID,
text = tbGrade.GradeName
}).ToList();
return Json(listGrade, JsonRequestBehavior.AllowGet);
}
看完这串代码,我们可以把上面的理解套入进去理解一下,
我们来一句一句的分析它:
var listGrade = (from tbGrade in myModel.SYS_Grade
(from tbGrade in myModel.SYS_Grade赋值给listGrade
join tbAcademe in myModel.SYS_Academe
join(重新命名)tbAcademe in myModel.SYS_Academe学院数据库里面的数据
on tbGrade.AcademeID equals tbAcademe.AcademeID
根据ntbGrade.AcademeID equals(连接) tbAcademe.AcademeID
where tbGrade.AcademeID == AcademeID
在tbGrade.AcademeID里== AcademeID它的时候
我们就在这个表里面去挑选我们所需要的东西。
select new
{
id = tbGrade.GradeID,
text = tbGrade.GradeName
}).ToList();
id = tbGrade.GradeID, 年级的id
text = tbGrade.GradeName 年级的名字。
return Json(listGrade, JsonRequestBehavior.AllowGet);
因为我们前面的那一个列表是listGrade,所以我们就在Json里面返回一个listGrade。
这是使用linq语句查询后的效果图。
这就是简单的linq语句查询了。
以上是关于求助LINQ语句按照时间查询的主要内容,如果未能解决你的问题,请参考以下文章