MySQL-এ 'dd/mm/yyyy' ফরম্যাটের স্ট্রিং ডেটাকে ইউনিক্স টাইমস্ট্যাম্পে রূপান্তর করতে STR_TO_DATE() এবং UNIX_TIMESTAMP() ফাংশন যুগল ব্যবহার করুন।
সিনট্যাক্স
SELECT UNIX_TIMESTAMP(STR_TO_DATE(yourColumnName, '%d/%m/%Y')) AS anyVariableName FROM yourTableName;
উদাহরণ
টেবিল তৈরি করি:
mysql> create table ConvertddmmyyyyInUnixTimeStamp
-> (
-> Id int NOT NULL AUTO_INCREMENT,
-> Created_at varchar(30),
-> PRIMARY KEY(Id)
-> ); Query OK, 0 rows affected (0.57 sec)
রেকর্ড ইনসার্ট (dd/mm/yyyy):
mysql> insert into ConvertddmmyyyyInUnixTimeStamp(Created_at) values('10/11/2012');
mysql> insert into ConvertddmmyyyyInUnixTimeStamp(Created_at) values('11/12/2013');
mysql> insert into ConvertddmmyyyyInUnixTimeStamp(Created_at) values('10/12/2012');
mysql> insert into ConvertddmmyyyyInUnixTimeStamp(Created_at) values('31/01/2015');
mysql> insert into ConvertddmmyyyyInUnixTimeStamp(Created_at) values('24/04/2016');
mysql> insert into ConvertddmmyyyyInUnixTimeStamp(Created_at) values('20/09/2017');
mysql> insert into ConvertddmmyyyyInUnixTimeStamp(Created_at) values('15/03/2018');
সকল রেকর্ড
mysql> select *from ConvertddmmyyyyInUnixTimeStamp;
আউটপুট
+----+------------+ | Id | Created_at | +----+------------+ | 1 | 10/11/2012 | | 2 | 11/12/2013 | | 3 | 10/12/2012 | | 4 | 31/01/2015 | | 5 | 24/04/2016 | | 6 | 20/09/2017 | | 7 | 15/03/2018 | +----+------------+
ইউনিক্স টাইমস্ট্যাম্পে রূপান্তর
mysql> SELECT UNIX_TIMESTAMP(STR_TO_DATE(Created_at, '%d/%m/%Y')) AS UnixTimestamp FROM ConvertddmmyyyyInUnixTimeStamp;
ফলাফল
+---------------+ | UnixTimestamp | +---------------+ | 1352485800 | | 1386700200 | | 1355077800 | | 1422642600 | | 1461436200 | | 1505845800 | | 1521052200 | +---------------+
স্মরণীয়:STR_TO_DATE()স্ট্রিংকে ডেট অবজেক্টে বদলে, তারপরUNIX_TIMESTAMP()সেকেন্ডে রূপান্তর করে। ফরম্যাট স্পেসিফায়ার '%d/%m/%Y' অবশ্যই ইনপুট স্ট্রিংয়ের সাথে মিলতে হবে।