我们开发了一个使用Postgres数据库作为持久性介质的Java EE应用程序。我们的一些实体属性被映射为float。对此列进行排序会产生以下结果:
SCORE 1.0 100.2 2.0 20.0 3.0
我预期的结果是:
SCORE 1.0 2.0 3.0 20.0 100.2
float attrributes在postgres数据库中使用数据类型float(8)进行映射。使用以下普通的sql查询排序按预期工作:
SELECT score FROM Evaluation ORDER BY score::float
同时将列类型更改为“real”也可以。是否有任何方法(使用列定义除外)与jpa一起使用?
答案 0 :(得分:1)
很抱歉你的努力:(。我再看一下域模型。他们将得分保存在两列中。一列是浮点数,另一列是varchar。排序操作对varchar列进行排序,因此字母数字排序没关系。