0

Postgres データベースを永続化媒体として使用する Java EE アプリケーションを開発します。エンティティ属性の一部は float としてマップされます。この列を並べ替えると、次の結果が得られます。

  スコア
  1.0
  100.2
  2.0
  20.0
  3.0

私が期待した結果は次のとおりです。

  スコア
  1.0
  2.0
  3.0
  20.0
  100.2

float 属性は、postgres データベースのデータ型 float(8) でマップされます。次の単純な sql クエリでは、並べ替えが期待どおりに機能します。

SELECT score FROM Evaluation ORDER BY score::float

列タイプを「実際の」作品に変更することもできます。jpaでこれを機能させる方法はありますか(列定義を使用する以外)?

4

1 に答える 1

1

お手数おかけして申し訳ありません :(. ドメイン モデルをもう一度調べてみました。スコアは 2 つの列に保存されました。1 つの列は float で、もう 1 つは varchar です。並べ替えアクションは varchar 列を並べ替えるため、英数字の並べ替えは問題ありません。

于 2012-07-17T05:47:25.043 に答える