MySQL-এ দুটি তারিখের মধ্যে মিনিট/ঘণ্টা/দিনের পার্থক্য বের করতে TIMESTAMPDIFF() ফাংশন ব্যবহার করা হয়।
উদাহরণ
টেবিল তৈরি:
CREATE TABLE demo42 (
start_date DATETIME
);
ডেটা ইনসার্ট:
INSERT INTO demo42 VALUES ('2020-01-10 12:30:05');
INSERT INTO demo42 VALUES ('2019-02-24 10:40:45');
INSERT INTO demo42 VALUES ('2020-05-12 05:45:55');
INSERT INTO demo42 VALUES ('2020-05-12 05:40:55');
INSERT INTO demo42 VALUES ('2020-05-12 05:42:55');
টেবিলের ডেটা:
+---------------------+ | start_date | +---------------------+ | 2020-01-10 12:30:05 | | 2019-02-24 10:40:45 | | 2020-05-12 05:45:55 | | 2020-05-12 05:40:55 | | 2020-05-12 05:42:55 | +---------------------+
কোয়েরি
নির্দিষ্ট সময় ('2020-05-12 05:40:55') থেকে ৫ মিনিটের মধ্যে থাকা রেকর্ডগুলো বের করা:
SELECT * FROM demo42 WHERE ABS(TIMESTAMPDIFF(MINUTE, start_date, '2020-05-12 05:40:55')) < 5;
আউটপুট
+---------------------+ | start_date | +---------------------+ | 2020-05-12 05:40:55 | | 2020-05-12 05:42:55 | +---------------------+
ব্যাখ্যা: TIMESTAMPDIFF(MINUTE, start_date, target_time) দুই তারিখের মিনিট পার্থক্য বের করে। ABS() ব্যবহার করে নেগেটিভ মান পজিটিভ করা হয়েছে, যাতে আগে বা পরে উভয় দিকের সময় পাওয়া যায়। INTERVAL কীওয়ার্ডও ব্যবহার করা যায়: WHERE start_date BETWEEN '2020-05-12 05:40:55' - INTERVAL 5 MINUTE AND '2020-05-12 05:40:55' + INTERVAL 5 MINUTE।