【发布时间】:2020-11-08 14:18:20
【问题描述】:
我想向现有实体添加一个新的瞬态列,该列在数据库中不存在,将在调用获取表并填充新列的查询时计算。
我尝试了以下方法:
对于以下实体:
A {
@Column
Integer x;
@Transient
Integer y;
}
我想创建一个在 A 对象中返回结果的查询:
query (named readA): select x, 1 from A;
List<A> query = em().createNamedQuery('readA').getResultList();
我的方法失败了,有什么建议可以做到吗?
【问题讨论】:
-
你能解释一下你想在这里做什么...
-
当然,我想在表中有一个计算列,该列在数据库的表中不存在,并且只会在一个获取表并计算该列的查询中计算。这够清楚了吗?
-
那为什么不使用
@Formula呢? -
公式将在每次我填充表格时进行连接(我的真实表格计算此列与另一个表格进行连接),这将导致性能不佳..我只想填充此列一次我称这个查询。