名前付きクエリで Hibernate を JPA プロバイダーとして使用していますが、言語に依存する結果を並べ替えるネイティブな方法があるかどうか疑問に思いました。基礎となるデータベースは、Oracle R10 です。
英語の名前の列とラテン語の名前の列 (さらに多くの.. フランス語、ドイツ語、イタリア語、スペイン語) を持つ表の動物があり、言語の 1 つに応じて並べ替える必要があるとします。
順序付きリストを取得するには、次のようなさまざまな選択ステートメントを使用できます
SELECT animal from Animal animal order by animal.name_EN;
SELECT animal from Animal animal order by animal.name_LA;
SELECT animal from Animal animal order by animal.name_FR;
等々。または、言語に応じて結果リストをソートする Comparator を作成しました。
これを行うためのより良い、よりエレガントな方法はありますか?