Máme několik možností, pokud chceme v PostgreSQL zobrazit čísla se znakem procenta.
Můžeme použít TO_CHAR()
funkce pro formátování čísla spolu se znakem procenta. Nebo můžeme číslo jednoduše zřetězit se znakem procenta, buď pomocí CONCAT()
nebo pomocí operátoru zřetězení.
TO_CHAR()
Funkce
Tato možnost zahrnuje předání čísla a číselného vzoru šablony funkci, aby se vrátilo číslo naformátované způsobem určeným vzorem šablony. Chcete-li získat znak procenta, zahrneme jej do vzoru naší šablony:
SELECT TO_CHAR(35, 'fm00D00%');
Výsledek:
35.00%
Zde jsem použil 0
vzor šablony, což znamená, že pozice číslice bude vždy vytištěna, i když obsahuje úvodní/koncovou nulu.
Také jsem použil fm
modifikátor formátu pro potlačení jakýchkoli úvodních/koncových nul nebo mezer.
Zde je to s některými dalšími vzory šablon:
SELECT
TO_CHAR(7, 'fm00%') AS "1",
TO_CHAR(7, 'fm99%') AS "2",
TO_CHAR(7.4567, 'fm0D00%') AS "3",
TO_CHAR(7, 'fm0D00%') AS "4";
Výsledek:
+-----+----+-------+-------+ | 1 | 2 | 3 | 4 | +-----+----+-------+-------+ | 07% | 7% | 7.46% | 7.00% | +-----+----+-------+-------+
V případě potřeby můžeme provést výpočet proti číslu:
SELECT
TO_CHAR(35 * 0.1, 'fm99D00%') AS "1",
TO_CHAR(0.35 * 100, 'fm99D00%') AS "2";
Výsledek:
+-------+--------+ | 1 | 2 | +-------+--------+ | 3.50% | 35.00% | +-------+--------+
V tomto případě uvádím 9
vzor šablony, takže všechny úvodní nuly jsou vynechány.
CONCAT()
Funkce
Dalším způsobem, jak to udělat, je použít CONCAT()
funkce pro spojení čísla a znaménka procenta:
SELECT CONCAT(35, '%');
Výsledek:
35%
Operátor zřetězení
Dalším způsobem, jak zřetězit číslo a znak procenta, je použít operátor zřetězení (||
):
SELECT 35 || '%';
Výsledek:
35%