我这是给我像100000.0000总量的查询,我想表明,该像100000有显示为卢比。 1,00,000.00
这里是我的查询:
String sql = " select distinct round(sum(netamount)) as amount from syncbill where cancelled<>'Y' and year(curdate())=year(billdate)";
ResultSet resultSetYtd = statement.executeQuery(YtdQuery);
while (resultSetYtd.next()) {
String AmountYtd = resultSetYtd.getString("amount");
system.out.println(AmountYtd);
}
我只能与查询实现这一目标?
您正在寻找印度数字分隔符(万卢比,亿卢比)。我们可以使用Format()
功能,与第三个参数设置为en_IN
(英语 - 印度)语言环境。第二个参数被设置为2指定小数点后.
小数点后2位。最后,CONCAT(“卢比。”)增加了货币的结果。
select CONCAT('Rs. ', FORMAT(sum(netamount), 2, 'en_IN'))
from syncbill
演示
select format(100000,2,'en_IN');
| format(100000,2,'en_IN') |
| ------------------------ |
| 1,00,000.00 |
编辑:但是,正如评论进一步讨论,你的MySQL服务器版本是显著老(5.1),它不支持区域设置参数Format()
功能。检查5.1文档here。
为5.5.0更新日志说
所述FORMAT()功能现在支持可选的第三个参数,使一个区域,以指定要被用于的结果数的小数点,千位分隔,和分离器之间的分组。允许区域值是相同的lc_time_names系统变量(见MySQL Server Locale Support)的合法值。例如,从FORMAT(1234567.89,2,'de_DE')结果是1.234.567,89。如果没有指定区域,则默认为“EN_US”。
所以,如果你有5.5或更高版本应该工作。如果您还是有问题,提供进一步的细节。
(警告:。在5.5击中EOL这些链接将打破编辑的链接,说5.6;那些可能工作)