MySQL-এ DATETIME বা TIMESTAMP কলাম থেকে শুধু তারিখ অংশ তুলনা করতে হলে DATE() ফাংশন ব্যবহার করুন। এটি সময় অংশকে উপেক্ষা করে কেবল তারিখের সাথে মিলিয়ে ফিল্টার করে।
সিনট্যাক্স
SELECT * FROM `your_table_name` WHERE DATE(`your_datetime_column`) = 'target_date';
উদাহরণ: টেবিল তৈরি ও ডেটা ইনসার্ট
CREATE TABLE `ComparingDate` (
`Name` VARCHAR(100),
`Login` DATETIME
);
INSERT INTO `ComparingDate` VALUES
('John', '2014-04-06 22:50:45'),
('Bob', '2018-12-15 15:07:46'),
('Carol', '2016-03-10 21:50:40'),
('David', '1995-08-08 23:40:47');
নির্দিষ্ট তারিখে ফিল্টার
SELECT * FROM `ComparingDate` WHERE DATE(`Login`) = '2016-03-10';
ফলাফল:
+-------+---------------------+
| Name | Login |
+-------+---------------------+
| Carol | 2016-03-10 21:50:40 |
+-------+---------------------+
অতিরিক্ত টিপস:
- তারিখ রেঞ্জের জন্য:
WHERE DATE(`col`) BETWEEN '2023-01-01' AND '2023-12-31' - ইন্ডেক্স ব্যবহার করতে চাইলে
WHERE `col` >= '2016-03-10' AND `col` < '2016-03-11'প্যাটার্নটি দ্রুততর।