Zahl rechts-oder linksbündig mit 0 formatieren

Die Präsentation von Informationen aus der Datenbank ist imho eher Sache des Clients als die des Servers. Solche Aufgaben gehören zum Handswerkzeug jedes Front-End und sind dort schnell und einfach erledigt.

Falls jedoch, aus welchen Gründen auch immer, dies auf dem Server erledigt werden muss, kann vielleicht folgendes Skript gute Dienst leisten:

DECLARE @MeineZahl INT
SET @MeineZahl = 99
SELECT 
	RIGHT(REPLICATE('0',10) + CAST(@MeineZahl AS VARCHAR(10)),10) AS Rechtsbündig
	, LEFT(CAST(@MeineZahl AS VARCHAR(10)) + REPLICATE('0',10) ,10) AS Linksbündig

Rechtsbündig Linksbündig 
------------ ----------- 
0000000099   9900000000

(1 row(s) affected)

Für den Lazycoder könnte das rechtbündige Auffüllen auch noch folgendermaßen aussehen:

DECLARE @MeineZahl INT
SET @MeineZahl = 99
SELECT REPLACE(STR(@MeineZahl,10), ' ', '0')

Rechtsbündig          
---------------------- 
0000000099

(1 row(s) affected)

 

Noch keine Bewertungen