Pokud chcete hodnotu až tisíciny, ale ne více desetinné části, můžete vynásobit 1000 a buď FLOOR
nebo použijte TRUNC
. Takhle:
SELECT TO_CHAR( TRUNC( value * 1000 ), '00000009' )
FROM table_name;
nebo:
SELECT LPAD( TRUNC( value * 1000 ), 8, '0' )
FROM table_name;
Pomocí TO_CHAR
povolí pouze nastavený maximální počet číslic na základě masky formátu (pokud hodnota překročí tuto velikost, zobrazí se #
s místo čísel), ale bude zpracovávat záporná čísla (umístění znaménka mínus před úvodní nuly).
Pomocí LPAD
umožní libovolnou velikost vstupu, ale pokud je vstup záporný, znaménko mínus bude uprostřed řetězce (za případnými úvodními nulami).