5

我对桌子上的一列有一点问题。该列是一个名为“prize”的 Varchar。数据类似于:

00008599
00004565
00001600
etc...

他们必须成为:

85.99
45.65
16.00
etc...

我尝试过使用 to_number 函数,但它不起作用。就像是:

SELECT to_number(prize, '999999.99') FROM TABLE

错误是:ORA-01722

4

2 回答 2

10

您可以使用 LTRIM 去除前导零并除以 100:

SELECT to_number(ltrim(prize, '0')) / 100 FROM table
于 2012-10-25T09:31:31.307 回答
3

请注意,您自己必须处理字符串是 100 倍的事实。最简单的方法应该是这样的:

SELECT to_number(prize)/100 FROM TABLE
于 2012-10-25T09:49:51.913 回答