No MySQL, podemos formatar um número como porcentagem concatenando o número com o sinal de porcentagem.
O
CONCAT()
função concatena seus argumentos. Podemos passar o número como o primeiro argumento e o sinal de porcentagem como o segundo. Exemplo
Segue um exemplo para demonstrar:
SELECT CONCAT(3.75, '%');
Resultado:
3.75%
A função retorna uma string. O número é convertido implicitamente em uma string antes que o sinal de porcentagem seja adicionado.
Também podemos passar expressões como as seguintes:
SELECT CONCAT(0.0375 * 100, '%');
Resultado:
3.7500%
Também podemos formatar a parte numérica com o
FORMAT()
função:SELECT CONCAT(FORMAT(0.0375 * 100, 2), '%');
Resultado:
3.75%
Aqui estão mais alguns exemplos com vários números e strings de formato:
SELECT
CONCAT(FORMAT(3754, 0), '%') AS "1",
CONCAT(FORMAT(0.0375, 3), '%') AS "2",
CONCAT(FORMAT(3.75, 5), '%') AS "3",
CONCAT(FORMAT(0.0375, 2), '%') AS "4";
Resultado:
+--------+--------+----------+-------+ | 1 | 2 | 3 | 4 | +--------+--------+----------+-------+ | 3,754% | 0.038% | 3.75000% | 0.04% | +--------+--------+----------+-------+
Adicionar zeros à esquerda
Podemos usar
LPAD()
para adicionar alguns zeros à esquerda:SELECT CONCAT(LPAD(3.45, 5, 0), '%');
Resultado:
03.45%