sql >> Base de Datos >  >> RDS >> SQLite

2 formas de agregar un signo de porcentaje a un número en SQLite

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%