MySQL-এ বড় সংখ্যক রকম কaarেন্সি ফরম্যাটে (কমা-সেপারেটেড, ২ ডেসিমেল) দেখানোর জন্য FORMAT() এবং CONCAT() ব্যবহার করা হয়।
টেবিল এবং ডেটা
CREATE TABLE DemoTable (
Amount DECIMAL(15,4)
);
INSERT INTO DemoTable VALUES(90948484);
INSERT INTO DemoTable VALUES(1000000000);
INSERT INTO DemoTable VALUES(1535353536);
INSERT INTO DemoTable VALUES(773646463);
কুয়েরি: USD কaarেন্সি ফরম্যাট
SELECT CONCAT('USD ', FORMAT(Amount, 2)) AS Currency FROM DemoTable;
ফলাফল
+----------------------+
| Currency |
+----------------------+
| USD 90,948,484.00 |
| USD 1,000,000,000.00 |
| USD 1,535,353,536.00 |
| USD 773,646,463.00 |
+----------------------+
FORMAT() প্যারামিটার
FORMAT(number, decimals [, locale])
decimals— ডেসিমেল প্লেস (২ = paisa/cents)locale— ঐচ্ছিক, উদাহরণ: 'en_US', 'de_DE', 'bn_BD'
লোকেল উদাহরণ
SELECT FORMAT(1234567.89, 2, 'en_US'); -- 1,234,567.89
SELECT FORMAT(1234567.89, 2, 'de_DE'); -- 1.234.567,89
SELECT FORMAT(1234567.89, 2, 'bn_BD'); -- ১২,৩৪,৫৬৭.৮৯ (বাংলা ডিজিট)
সতর্কতা
FORMAT()স্ট্রিং রিটার্ন করে — ক্যালকুলেশনে ব্যবহার করবেন না- নেগেটিভ সংখ্যার জন্য মাইনাস চিহ্ন থাকে
- অতিরিক্ত ডেসিমেল রাউন্ড করে (ট্রানকেট করে না)
বিকল্প: CONCAT_WS
SELECT CONCAT_WS(' ', 'USD', FORMAT(Amount, 2)) FROM DemoTable;