FORMAT
Rundet eine Zahl und formatiert sie als String mit Tausendertrennzeichen.
MySQL 8.4
FORMAT(num, decimals[, locale])- [ ]optionaler Teil
- num
- Zu formatierende ZahlDECIMAL
- decimals
- Anzahl der Nachkommastellen, eine negative zählt als 0INT
- locale
- Regeln für die Schreibweise, zum Beispiel de_DE oder ru_RU, standardmäßig en_USVARCHAROptional
Rückgabewert
String wie 1,234,567.89; NULL, wenn num NULL ist
Beispiele
Tausendertrennzeichen
MySQL 8.4
SELECT FORMAT(1234567.891, 2) AS formatted;Deutsche und russische Schreibweise
MySQL 8.4
SELECT FORMAT(1234567.891, 2, 'de_DE') AS de,
FORMAT(1234567.891, 2, 'ru_RU') AS ru;Ausgaben je Familienmitglied
MySQL 8.4
SELECT family_member,
FORMAT(SUM(amount * unit_price), 0) AS spent
FROM Payments
GROUP BY family_member
ORDER BY SUM(amount * unit_price) DESC;Details
Das Ergebnis ist ein String, daher kannst du danach nicht wie nach einer Zahl sortieren oder vergleichen: '9,000' ist dann größer als '10,000'. Sortiere nach dem Ausgangsausdruck und verwende FORMAT nur für die Ausgabe. Bei .5 wird von null weg gerundet, wie bei ROUND.