Java 使用JPA2标准API选择最大时间戳
因此,我的实体:Java 使用JPA2标准API选择最大时间戳,java,generics,jpa-2.0,java-ee-6,criteria-api,Java,Generics,Jpa 2.0,Java Ee 6,Criteria Api,因此,我的实体: @Column(name="TS", nullable=false) private java.sql.Timestamp timestamp; 我生成的元模型具有: public static volatile SingularAttribute<MyEntity,Timestamp> timestamp; 公共静态属性时间戳; 我想按最大时间戳值选择: Root<MyEntity> root = query.from(MyEntity.cla
@Column(name="TS", nullable=false)
private java.sql.Timestamp timestamp;
我生成的元模型具有:
public static volatile SingularAttribute<MyEntity,Timestamp> timestamp;
公共静态属性时间戳;
我想按最大时间戳值选择:
Root<MyEntity> root = query.from(MyEntity.class);
Expression maxExpression = cb.max(root.get(MyEntity_.timestamp));
Root=query.from(MyEntity.class);
表达式maxExpression=cb.max(root.get(MyEntity_u2;timestamp));
但我不被允许,因为:
max(表达式x)
应用数值最大值操作创建聚合表达式。
表达式
当然,Timestamp
不会扩展Number
如何使用typesafe Criteria API在时间戳
列上执行MAX
?而不是时间戳(以及日期、字符串和其他可比数据)。若你们需要最小值作为时间戳,那个么就用最小值法代替
类似的问题可能面临较少/较多/相等的比较。第一个接受扩展数字的参数,第二个用于其他可比数据:
- vs
- vs
- vs
- vs