Aquí hay dos formas de formatear un número como un porcentaje en SQLite.
Opción 1:El PRINTF()
o FORMAT()
Función
Podemos usar PRINTF()
o FORMAT()
función para agregar el signo de porcentaje a un número:
SELECT PRINTF('%2d%%', 17);
Resultado:
17%
Al usar esta función, el signo de porcentaje tiene un significado especial en la cadena de formato (indica que sigue una sustitución). Si queremos que el signo de porcentaje real se incluya en la salida, debemos usar dos signos de porcentaje en la cadena de formato.
Aquí hay algunos ejemplos más:
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";
Resultado:
1 2 3 4 --- ----- ----- ------ 03% 3.00% 3.46% 3.456%
Actualizar :SQLite 3.38.0 (lanzado el 22 de febrero de 2022) cambió el nombre de PRINTF()
función para FORMAT()
. El PRINTF()
original el nombre se conserva como un alias para la compatibilidad con versiones anteriores.
Por lo tanto, el primer ejemplo anterior se puede cambiar a este:
SELECT FORMAT('%2d%%', 17);
Resultado:
17%
Opción 2:Concatenar
Otra forma de hacerlo es usar el operador de concatenación (||
) para concatenar el número con el signo de porcentaje:
SELECT 3.45 || '%';
Resultado:
3.45%
también puede funcionar con expresiones como esta:
SELECT (0.045 * 100) || '%';
Resultado:
4.5%