MySQL-এ ডেট/টাইম কলামের আউটপুট ফরম্যাট পরিবর্তন করার সবচেয়ে ভালো পদ্ধতি হলো DATE_FORMAT() ফাংশন ব্যবহার করা।
সিনট্যাক্স
SELECT DATE_FORMAT(yourColumnName, '%d/%m/%Y %H:%i') AS anyAliasName FROM yourTableName WHERE yourCondition;
উদাহরণ
টেবিল তৈরি:
mysql> CREATE TABLE bestDateFormatDemo (
-> Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
-> ArrivalDateTime DATETIME
-> );
ডেটা ইনসার্ট:
mysql> INSERT INTO bestDateFormatDemo(ArrivalDateTime) VALUES(NOW());
mysql> INSERT INTO bestDateFormatDemo(ArrivalDateTime) VALUES(DATE_ADD(NOW(), INTERVAL -2 YEAR));
mysql> INSERT INTO bestDateFormatDemo(ArrivalDateTime) VALUES('2014-01-31 13:45:56');
mysql> INSERT INTO bestDateFormatDemo(ArrivalDateTime) VALUES('2016-02-11 12:40:30');
mysql> INSERT INTO bestDateFormatDemo(ArrivalDateTime) VALUES('2018-12-31 12:59:59');
সকল রেকর্ড (ডিফল্ট YYYY-MM-DD HH:MM:SS):
mysql> SELECT * FROM bestDateFormatDemo;
+----+---------------------+ | Id | ArrivalDateTime | +----+---------------------+ | 1 | 2019-02-22 22:50:10 | | 2 | 2017-02-22 22:50:28 | | 3 | 2014-01-31 13:45:56 | | 4 | 2016-02-11 12:40:30 | | 5 | 2018-12-31 12:59:59 | +----+---------------------+
ফরম্যাট পরিবর্তন (DD/MM/YYYY HH:MM - ২৪ ঘণ্টা):
mysql> SELECT DATE_FORMAT(ArrivalDateTime, '%d/%m/%Y %H:%i') AS changeDateFormat
-> FROM bestDateFormatDemo WHERE Id IN (1,2,3,4,5);
+------------------+ | changeDateFormat | +------------------+ | 22/02/2019 22:50 | | 22/02/2017 22:50 | | 31/01/2014 13:45 | | 11/02/2016 12:40 | | 31/12/2018 12:59 | +------------------+
১২-ঘণ্টা ফরম্যাট (h ব্যবহার করুন H বদলে):
mysql> SELECT DATE_FORMAT(ArrivalDateTime, '%d/%m/%Y %h:%i') AS changeDateFormat
-> FROM bestDateFormatDemo WHERE Id IN (1,2,3,4,5);
+------------------+ | changeDateFormat | +------------------+ | 22/02/2019 10:50 | | 22/02/2017 10:50 | | 31/01/2014 01:45 | | 11/02/2016 12:40 | | 31/12/2018 12:59 | +------------------+
কমন ফরম্যাট স্পেসিফায়ার: %Y=৪-ডিজিট বছর, %y=২-ডিজিট বছর, %m=মাস (০১-১২), %d=দিন (০১-৩১), %H=ঘণ্টা (০০-২৩), %h=ঘণ্টা (০১-১২), %i=মিনিট, %s=সেকেন্ড, %p=AM/PM।