使用XQuery将十进制xml转换为带有2个小数点的十进制数

时间:2012-08-10 08:22:43

标签: xml xquery

我是xml和XQuery的新手,我对转换数字有疑问。

我有平面文件,使用Stylus Studio转换器转换为xml。然后我使用XQuery来引入我需要的各种表。

其中一个问题是货币输入数据。

平面文件数据:00004700000这是47000美元 (在转换器源中定义字符串,目标定义为十进制)

在XQuery中,我可以将数字00004700000除以100而BUT最终得到47000。

我想要的是输出为47000.00,这样我就可以显示它的2位小数点。

值000038715除以100得到387.15,工作正常。

这就是我在XQuery中所做的:

<CREDIT_LIMIT>
{$cust/CREDIT_LIMIT div 100}
</CREDIT_LIMIT>

有没有办法在XQuery的输出上获得.00?

非常感谢。 普拉

PS 不太了解xslt!

2 个答案:

答案 0 :(得分:3)

你有这个函数format-number:

<CREDIT_LIMIT>
{format-number($cust/CREDIT_LIMIT div 100,".00")}
</CREDIT_LIMIT>

答案 1 :(得分:2)

使用

<CREDIT_LIMIT>
  {$x idiv 100 }.{$x mod 100 idiv 10}{$x mod 10}
</CREDIT_LIMIT>

其中$x是以所需的十进制格式表示的数字。