Nie, to nie jest błąd, to udokumentowane zachowanie .
Możesz użyć modyfikatora modelu formatu
zmienić to zachowanie; w tym przypadku FM
modyfikator 'fill mode' (chociaż dokumentacja tak naprawdę nie mówi o jego użyciu z modelami formatu liczb):
SELECT to_char(LEVEL - 1, 'fm0000') ...