VARCHAR ডেট কলাম থেকে নির্দিষ্ট মাসের রেকর্ড বের করা
যদি তারিখ VARCHAR কলোমে 'YYYY-MM-DD' ফরম্যাটে থাকে, তবে LIKE ওপারেটর দিয়ে সহজে নির্দিষ্ট মাসের রেকর্ড ফিল্টার করা যায়।
টেবিল ও ডেটা
mysql> CREATE TABLE DemoTable (AdmissionDate VARCHAR(100));
mysql> INSERT INTO DemoTable VALUES('2018-01-21'), ('2019-08-13'), ('2019-07-08'), ('2016-02-12');
সব রেকর্ড
+---------------+ | AdmissionDate | +---------------+ | 2018-01-21 | | 2019-08-13 | | 2019-07-08 | | 2016-02-12 | +---------------+
আগস্ট (০৮) মাসের রেকর্ড ফিল্টার
mysql> SELECT * FROM DemoTable WHERE AdmissionDate LIKE '2019-08%';
+---------------+ | AdmissionDate | +---------------+ | 2019-08-13 | +---------------+
ব্যাখ্যা
LIKE '2019-08%'— ২০১৯ সালের ০৮ মাস দিয়ে শুরু হওয়া স্ট্রিং খুঁজে।- এটি স্ট্রিং কম্প্যারিজন, তাই ডেট টাইপ থাকা ভালো (তবে VARCHAR-ও কাজ করে)।
ভালো পদ্ধতি (ডেট টাইপ থাকলে)
SELECT * FROM DemoTable WHERE MONTH(AdmissionDate) = 8 AND YEAR(AdmissionDate) = 2019;
ডেট টাইপ থাকলে MONTH(), YEAR() ফাংশন ব্যবহার করা বেশি নির্ভরযোগ্য এবং ইনডেক্স-বান্ধব।