下午好,我正在努力学习nHibernate并且它并不是非常清楚。
我需要获取sql查询的结果:
select patient.name,
discipline.description,
sum(patient.enddate - patient.startdate) as totaltime
from treatment
join patient on patient.id = treatment.patientId
join discipline.id = treatment.disciplineId
我不需要保留结果,只需显示它。
它将实例化哪些对象并返回给我?它是否会动态构建包含与结果集中的列相同的字段的对象列表?文档遗漏了这些信息。
你是否创建了一个映射到'meta'对象或其中一个连接表(比如'treatment')?
由于
答案 0 :(得分:0)
这可以通过使用DTO对象(“数据传输对象”)来实现。您创建的对象仅包含您要返回的数据。添加初始化构造函数。那么你的hql可以是以下形式:
从x join x.y中选择新的mydto(x.value,y.value);
它似乎不喜欢在对象构造函数中使用聚合函数。