【发布时间】:2020-07-23 15:41:23
【问题描述】:
我想创建投影。 DTO平坦时没有问题:
class Projection {
String id;
String fieldA;
String fieldB;
Projection(String id, String fieldA, String fieldB){
...
}
}
那么查询将是:
SELECT new Projection(t.id, t.fieldA, t.fieldB) FROM Entity t WHERE t.id...
但我无法为该投影创建查询:
class Projection {
String id;
NestedObject nested;
Projection(String id, NestedObject nested){
...
}
}
class NestedObject {
String fieldA;
String fieldB;
NestedObject(String fieldA, String fieldB){
...
}
}
我试过了:
SELECT new Projection(t.id, (SELECT new NestedObject(n.fieldA, n.fieldB) FROM Entity n)) FROM Entity t WHERE t.id...
但不起作用。
两个问题:
- 有可能吗?
- 如果 1 的答案是肯定的,这个查询应该是什么样子?
【问题讨论】:
标签: hibernate jpql projection