V SQLite můžeme použít PRINTF()
funkce nebo FORMAT()
funkce pro formátování čísel s úvodními nulami.
Příklad
SELECT PRINTF('%03d', 7);
Výsledek:
007
Znak procenta (%
) označuje, že následuje substituce.
0
znamená, že SQLite by měl předřadit co nejvíce 0
znaků na číselné substituce podle potřeby k rozšíření hodnoty na zadanou šířku.
d
označuje, že argument je celé číslo se znaménkem, které se zobrazuje v desítkové soustavě (na rozdíl od šestnáctkové, osmičkové atd.).
Pokud bychom tedy chtěli více úvodních nul, můžeme zvýšit 3
na větší číslo:
SELECT PRINTF('%09d', 7);
Výsledek:
000000007
U celých čísel můžeme za oddělovač skupin vložit čárku:
SELECT PRINTF('%0,9d', 72345);
Výsledek:
000,072,345
Položka FORMAT()
Funkce
SQLite 3.38.0 (vydáno 22. února 2022) přejmenováno na PRINTF()
funkce na FORMAT()
. Původní PRINTF()
jméno je zachováno jako alias pro zpětnou kompatibilitu.
První příklad výše lze tedy změnit na tento:
SELECT FORMAT('%2d%%', 17);
Výsledek:
17%