Lo que dice Jurena funcionaria perfectamente del 1 al 9, pero imagina que luego necesitas crecer la mantiza de 2 a 10, por ejemplo para tener 005401, entonces se te complica la cosa, no???
Bueno, para el primer punto en SQLServer funcionan tanto CAST como CONVERT
Ahora para el segundo punto y tener una mantiza variable, lo que yo haría es hacer una funcion (si el motor lo soporta) para que te devuleva el dato ya formateado y en esa funcion pones todo el codigo necesario y la consulta sería de la siguiente manera:
select numero = dbo.fnRellenaCeros(numeroX)
Saludos...