MySQL-এ DATETIME বা TIMESTAMP কলাম থেকে নির্দিষ্ট মাস ও বছরের রেকর্ড বের করতে MONTH() এবং YEAR() ফাংশন ব্যবহার করা হয়।
টেবিল ও ডেটা
mysql> CREATE TABLE DemoTable (
Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
ShippingDate DATETIME
);
mysql> INSERT INTO DemoTable(ShippingDate) VALUES
('2019-01-21 10:40:21'), ('2015-07-01 11:15:30'), ('2012-12-31 10:45:56');
সকল ডেটা
+----+---------------------+ | Id | ShippingDate | +----+---------------------+ | 1 | 2019-01-21 10:40:21 | | 2 | 2015-07-01 11:15:30 | | 3 | 2012-12-31 10:45:56 | +----+---------------------+
জুলাই ২০১৫ এর রেকর্ড বের করা
mysql> SELECT * FROM DemoTable
WHERE MONTH(ShippingDate) = 7 AND YEAR(ShippingDate) = 2015;
ফলাফল
+----+---------------------+ | Id | ShippingDate | +----+---------------------+ | 2 | 2015-07-01 11:15:30 | +----+---------------------+
পারফরম্যান্স টিপ: WHERE MONTH(col)=7 AND YEAR(col)=2015 ইনডেক্স ব্যবহার করতে পারে না (Non-SARGable)। বড় টেবিলের জন্য রেঞ্জ কোয়েরি ভালো: WHERE ShippingDate >= '2015-07-01' AND ShippingDate < '2015-08-01'।