Ecco due modi per formattare un numero come percentuale in SQLite.
Opzione 1:PRINTF()
o FORMAT()
Funzione
Possiamo usare il PRINTF()
o FORMAT()
funzione per aggiungere il segno di percentuale a un numero:
SELECT PRINTF('%2d%%', 17);
Risultato:
17%
Quando si utilizza questa funzione, il segno di percentuale ha un significato speciale nella stringa di formato (indica che segue una sostituzione). Se vogliamo che il segno di percentuale effettivo sia incluso nell'output, dobbiamo utilizzare il due segni di percentuale nella stringa di formato.
Ecco altri esempi:
SELECT
PRINTF('%02d%%', 3.45) AS "1",
PRINTF('%2.2f%%', 3) AS "2",
PRINTF('%1.2f%%', 3.456) AS "3",
PRINTF('%2.3f%%', 3.456) AS "4";
Risultato:
1 2 3 4 --- ----- ----- ------ 03% 3.00% 3.46% 3.456%
Aggiorna :SQLite 3.38.0 (rilasciato il 22 febbraio 2022) rinominato PRINTF()
funzione su FORMAT()
. Il PRINTF()
originale name viene mantenuto come alias per la compatibilità con le versioni precedenti.
Pertanto, il primo esempio sopra può essere modificato in questo:
SELECT FORMAT('%2d%%', 17);
Risultato:
17%
Opzione 2:Concatena
Un altro modo per farlo è usare l'operatore di concatenazione (||
) per concatenare il numero con il segno di percentuale:
SELECT 3.45 || '%';
Risultato:
3.45%
Può funzionare anche con espressioni come questa:
SELECT (0.045 * 100) || '%';
Risultato:
4.5%