0

これは、。を使用したJavaのプロジェクトopenjpa ORMです。NUMBER(10,2)Oracleデータベースでのタイプの選択と同様に問題があります。

の数値のタイプJPA is BigDecimalと数値は、整数ではなく整数のようにすることができます。次に例を示します。

123456
or 123456,01; 123456,15

プレゼンテーション層では、ユーザーはグローバルフィルターを使用できますが、この列だけでなく、列と演算子(等、等しい、または間)を選択して値を定義できます。

例:'%56%'のようなcolumn1

また、プレゼンテーション層の数値には前提条件2があるため、次のようになります。

123456,00 ->'123456,00'
123456,01 -> '123456,01'

Oracleデータベースが操作のように実行されると、nuberは文字列型に変換されます。

123456,00 -> '123456'
and 123456,01 -> '123456,01'

したがって、操作column1の結果like '%,0%'

123456,01しかし、両方ではありません。

また、ここのようにネイティブSQL関数を呼び出してみましたが、JPA1.0の実装でOpenJPA1.2.3を使用しています。

私の問題の回避策を見つけるのを手伝ってください。

4

1 に答える 1

1

これが役立つかどうかはわかりませんが、Oracle側では次を使用する必要があります。

select * 
from your_table
where to_char(your_column,'99999999.99') like '%.0%';
于 2012-11-02T11:29:21.190 に答える