具有Have和Max查询的Nhibernate条件? [英] Nhibernate Criteria for the Having and Max query?
本文介绍了具有Have和Max查询的Nhibernate条件?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在尝试为以下查询创建Nhibernate条件,但没有正确的主意.
从PatientEligibilityHistory中的
I am trying to create Nhibernate criteria for the follwing query but not getting the right idea.
SELECT PEH.ResponseStatus FROM PatientEligibilityHistory PEH WHERE PEH.PatientId = " + patientId + " AND PEH.PayorId = " + payorId + " AND PEH.DateOfService = '" + dateOfService + "' AND PEH.Insured_Id = '" + insuredId + "' HAVING PEH.ResponseDateTime = MAX(PEH.ResponseDateTime)
我正在尝试以下Nhibernate条件,但它不起作用.
I am trying the following Nhibernate Criteria but it is not working .
ICriteria criteria = session.CreateCriteria(typeof(PatientEligibilityHistory));
criteria.Add(Expression.And(Expression.In("PatientId", patientList), Expression.In("PatientCaseId", patientCaseList)));
criteria.Add(Expression.And(Expression.In("PayorId", payorList), Expression.In("InsuredId", insuredList)));
ProjectionList projectionList = Projections.ProjectionList();
projectionList.Add(Projections.Max("ResponseDatetime"));
projectionList.Add(Projections.GroupProperty("ResponseDatetime"));
criteria.SetProjection(projectionList);
return criteria;
请进行指导.
Please guide.
推荐答案
SELECT PEH.ResponseStatus FROM PatientEligibilityHistory PEH WHERE PEH.PatientId = " + patientId + " AND PEH.PayorId = " + payorId + " AND PEH.DateOfService = '" + dateOfService + "' AND PEH.Insured_Id = '" + insuredId + "' HAVING PEH.ResponseDateTime = select MAX(PEH.ResponseDateTime) from PatientEligibilityHistory
这篇关于具有Have和Max查询的Nhibernate条件?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文