W SQLite możemy użyć PRINTF() funkcja lub FORMAT() funkcja formatowania liczb z wiodącymi zerami.
Przykład
SELECT PRINTF('%03d', 7); Wynik:
007
Znak procentu (% ) wskazuje, że następuje podstawienie.
0 wskazuje, że SQLite powinien poprzedzać tyle 0 znaków na podstawienia liczbowe, jeśli to konieczne, aby rozszerzyć wartość do określonej szerokości.
d wskazuje, że argument jest liczbą całkowitą ze znakiem, która jest wyświetlana w postaci dziesiętnej (w przeciwieństwie do szesnastkowej, ósemkowej itp.).
Jeśli więc chcielibyśmy mieć więcej wiodących zer, możemy zwiększyć 3 do większej liczby:
SELECT PRINTF('%09d', 7); Wynik:
000000007
W przypadku liczb całkowitych możemy dołączyć przecinek jako separator grup:
SELECT PRINTF('%0,9d', 72345); Wynik:
000,072,345
FORMAT() Funkcja
SQLite 3.38.0 (wydany 22 lutego 2022) zmienił nazwę PRINTF() funkcja FORMAT() . Oryginalny PRINTF() nazwa jest zachowywana jako alias dla wstecznej kompatybilności.
Dlatego pierwszy przykład powyżej można zmienić na następujący:
SELECT FORMAT('%2d%%', 17); Wynik:
17%