Wir haben mehrere Möglichkeiten, wenn wir Zahlen mit einem Prozentzeichen in PostgreSQL anzeigen möchten.
Wir können den TO_CHAR()
verwenden Funktion, um die Zahl zusammen mit dem Prozentzeichen zu formatieren. Oder wir können die Zahl einfach mit dem Prozentzeichen verketten, entweder mit CONCAT()
-Funktion oder mit dem Verkettungsoperator.
Der TO_CHAR()
Funktion
Bei dieser Option werden die Zahl und ein numerisches Vorlagenmuster an die Funktion übergeben, um die Zahl so formatiert zurückzugeben, wie es durch das Vorlagenmuster angegeben ist. Um ein Prozentzeichen zu erhalten, fügen wir es in unser Vorlagenmuster ein:
SELECT TO_CHAR(35, 'fm00D00%');
Ergebnis:
35.00%
Hier habe ich den 0
verwendet Vorlagenmuster, was bedeutet, dass die Ziffernposition immer gedruckt wird, auch wenn sie eine führende/nachgestellte Null enthält.
Ich habe auch den fm
verwendet Formatmodifikator, um führende/nachgestellte Nullen oder Leerzeichen zu unterdrücken.
Hier ist es mit einigen anderen Vorlagenmustern:
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";
Ergebnis:
+-----+----+-------+-------+ | 1 | 2 | 3 | 4 | +-----+----+-------+-------+ | 07% | 7% | 7.46% | 7.00% | +-----+----+-------+-------+
Wir können bei Bedarf eine Berechnung mit der Zahl durchführen:
SELECT
TO_CHAR(35 * 0.1, 'fm99D00%') AS "1",
TO_CHAR(0.35 * 100, 'fm99D00%') AS "2";
Ergebnis:
+-------+--------+ | 1 | 2 | +-------+--------+ | 3.50% | 35.00% | +-------+--------+
In diesem Fall füge ich die 9
hinzu Vorlagenmuster, sodass alle führenden Nullen weggelassen werden.
Der CONCAT()
Funktion
Eine andere Möglichkeit ist die Verwendung von CONCAT()
Funktion zum Verketten der Zahl und des Prozentzeichens:
SELECT CONCAT(35, '%');
Ergebnis:
35%
Der Verkettungsoperator
Eine andere Möglichkeit, die Zahl und das Prozentzeichen zu verketten, ist die Verwendung des Verkettungsoperators (||
):
SELECT 35 || '%';
Ergebnis:
35%