In SQLite können wir den PRINTF() verwenden Funktion oder FORMAT() Funktion zum Formatieren von Zahlen mit führenden Nullen.
Beispiel
SELECT PRINTF('%03d', 7); Ergebnis:
007
Das Prozentzeichen (% ) gibt an, dass eine Substitution folgt.
Die 0 gibt an, dass SQLite möglichst viele 0 voranstellen soll Zeichen nach Bedarf in numerische Ersetzungen, um den Wert auf die angegebene Breite zu erweitern.
Das d gibt an, dass das Argument eine vorzeichenbehaftete Ganzzahl ist, die dezimal angezeigt wird (im Gegensatz zu hexadezimal, oktal usw.).
Wenn wir also mehr führende Nullen wollen, können wir die 3 erhöhen zu einer größeren Zahl:
SELECT PRINTF('%09d', 7); Ergebnis:
000000007
Bei Ganzzahlen können wir ein Komma als Gruppentrennzeichen einfügen:
SELECT PRINTF('%0,9d', 72345); Ergebnis:
000,072,345
Das FORMAT() Funktion
SQLite 3.38.0 (veröffentlicht am 22. Februar 2022) hat PRINTF() umbenannt Funktion zu FORMAT() . Das ursprüngliche PRINTF() Name wird als Alias für Abwärtskompatibilität beibehalten.
Daher kann das erste obige Beispiel wie folgt geändert werden:
SELECT FORMAT('%2d%%', 17); Ergebnis:
17%