В MySQL, FORMAT() функцията връща число, форматирано до определен брой десетични знаци.
Той включва разделители на групи и десетичен разделител, където е приложимо.
Синтаксис
Синтаксисът е така:
FORMAT(X,D[,locale]) Къде:
Xе числото за форматиране.Dе броят на десетичните знаци, до които искате да закръглите числото.localeе незадължителен аргумент, който определя конвенциите за форматиране на локала да се използват.
Пример
Ето пример за демонстрация:
SELECT FORMAT(123456.789, 2); Резултат:
123,456.79
Тук числото беше закръглено до два знака след десетичната запетая (защото посочих 2 като втори аргумент). В този случай десетичната част беше закръглена нагоре.
Числото също получи запетая като разделител на групата и точка/точка като десетичен разделител.
Премахнете дробната част
Можете да използвате 0 като втори аргумент за премахване на всяка дробна част:
SELECT FORMAT(123456.789, 0); Резултат:
123,457
Добавяне на десетични знаци
Можете да добавите десетични знаци, като използвате втори аргумент, който е по-голямо от броя на десетичните знаци в числото, което трябва да бъде форматирано:
SELECT FORMAT(123456.789, 6); Резултат:
123,456.789000
Това може да се използва за добавяне на дробна част към цели числа:
SELECT FORMAT(123456, 2); Резултат:
123,456.00
Отрицателни числа
Функцията работи също толкова добре при отрицателни числа:
SELECT FORMAT(-123456.789, 2); Резултат:
-123,456.79
Locale
Ето пример, за да демонстрирате как работи третият аргумент:
SELECT FORMAT(123456.789, 2, 'de_DE'); Резултат:
123,456.79
В този пример посочих, че локалът е de_DE , което е за немски. Следователно конвенциите за форматиране диктуват, че запетаята се използва за десетичния разделител, а точката/точката се използва за разделителя на хилядите.
Третият аргумент може да бъде всяка от стойностите, които се поддържат от lc_time_names системна променлива.