Tengo una consulta que me está dando la cantidad total como 100000.0000 y yo quiero mostrar esto como 100000 tiene que mostrarse como Rs. 1,00,000.00
Aquí está mi consulta:
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);
}
Puedo lograr esto con consulta sólo?
Que busca separadores numeral indias (lakhs, crores). Podemos utilizar Format()
la función, con el tercer conjunto de parámetros a en_IN
(Inglés - India) local. En segundo parámetro se establece en 2 para especificar 2 decimales después del punto decimal .
. Por último, el CONCAT ( 'R'.) Añade la moneda al resultado.
select CONCAT('Rs. ', FORMAT(sum(netamount), 2, 'en_IN'))
from syncbill
Manifestación
select format(100000,2,'en_IN');
| format(100000,2,'en_IN') |
| ------------------------ |
| 1,00,000.00 |
Editar: Sin embargo, como se analiza en los comentarios, su versión del servidor MySQL es significativamente edad (5.1) y que no soporta Format()
la función con el parámetro de configuración regional. Compruebe la documentación 5.1 aquí .