Ето пример за форматиране на число като валута в MariaDB.
SELECT CONCAT('$', FORMAT(8790.2398, 2));
Резултат:
$8,790.24
Тук използвахме CONCAT()
на MariaDB функция за свързване на символа на валутата и числото. Използвахме и FORMAT()
функция за форматиране на номера в желания формат.
Указване на локал
FORMAT()
на MariaDB функцията приема незадължителен трети аргумент за локала. Това ви позволява да форматирате номера, като използвате посочения локал.
Пример:
SELECT CONCAT('€', FORMAT(8790.2398, 2, 'de_DE'));
Резултат:
€8.790,24
В този случай уточних, че числото трябва да бъде форматирано с помощта на немски конвенции за номериране, което използва точка за разделителя на групата и запетая за десетичната запетая.
Използвах и символа на еврото (€
) вместо знака за долар за символа на валутата.
Форматиране в приложението срещу базата данни
Обикновено е по-добре валутата и другото форматиране да се извършват на ниво приложение, а не на ниво база данни. Средите за програмиране на приложения обикновено имат по-добри възможности за форматиране от СУБД и обикновено е по-добре да има неформатирани данни, върнати от DB, така че приложението да може да започне с чист лист и да го форматира според нуждите.
Като се има предвид това, понякога ситуацията изисква форматирането да се извърши на ниво база данни, в който случай горните техники могат да бъдат полезни.