gpt4 book ai didi

java - ResultSetMetaData getScale 返回 0

转载 作者:行者123 更新时间:2023-12-02 08:21:41 28 4
gpt4 key购买 nike

我有一个名为 RATE_HISTORY 的表,其中包含一个名为 RATE 的字段。
RATE 字段的刻度为 18。
我正在使用 ResultsetMetaData 获取 Oracle 11.2 上此表中列的元数据。
我在代码中执行以下查询:

select (RATE * 100) from RATE_HISTORY

当我执行 metadata.getScale() 时,它返回 0。但是,如果我执行此查询:

select RATE from RATE_HISTORY

getScale 返回正确的值 (18)。
有没有办法在oracle中将两个数字相乘并保持比例?

最佳答案

我怀疑发生这种情况是因为比例是表列的产物,而不是数据本身。当您从列值派生值时,您会丢失该元数据。

如何使用

select RATE, (RATE * 100) from RATE_HISTORY

您可以从第一列获取比例,从第二列获取计算结果。

当然,或者只是在 java 中进行乘法运算。

关于java - ResultSetMetaData getScale 返回 0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5354176/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com