মাসের সংক্ষিপ্ত নাম (Jan, Feb, Mar...) থেকে মাসের সংখ্যা (১-১২) বের করতে STR_TO_DATE() এবং MONTH() ফাংশন ব্যবহার করুন। সিনট্যাক্স:
SELECT MONTH(STR_TO_DATE(yourColumnName, '%b')) FROM yourTableName;
প্রথমে একটি টেবিল তৈরি করি:
mysql> CREATE TABLE DemoTable (
Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
MonthName VARCHAR(100)
);
রেকর্ড যোগ করি:
mysql> INSERT INTO DemoTable(MonthName) VALUES('Jan'), ('Mar');
সকল রেকর্ড দেখতে:
mysql> SELECT * FROM DemoTable;
আউটপুট:
+----+-----------+ | Id | MonthName | +----+-----------+ | 1 | Jan | | 2 | Mar | +----+-----------+
মাসের নাম থেকে সংখ্যা বের করা:
mysql> SELECT MONTH(STR_TO_DATE(MonthName, '%b')) FROM DemoTable;
আউটপুট:
+------------------------------------+ | MONTH(STR_TO_DATE(MonthName, '%b')) | +------------------------------------+ | 1 | | 3 | +------------------------------------+
ব্যাখ্যা:
STR_TO_DATE(MonthName, '%b'): '%b' ফরম্যাট স্পেসিফায়ার মাসের সংক্ষিপ্ত নাম (Jan, Feb, Mar...) পার্স করে DATE রিটার্ন করে (ইয়ার ডিফল্ট ০০০০, ডে ডিফল্ট ০১)।MONTH(...): সেই DATE থেকে মাসের সংখ্যা বের করে।
ফরম্যাট স্পেসিফায়ার: %b = সংক্ষিপ্ত মাসের নাম, %M = পূর্ণ মাসের নাম (January, February...)।