MySQL-এ BETWEEN অপারেটর এবং NOW() ফাংশন ব্যবহার করে বর্তমান তারিখ এবং সময় দুটি তারিখের মাঝপথে আছে কিনা তা যাচাই করা যায়।
উদাহরণ: টেবিল তৈরি এবং ডেটা ইনসার্ট
mysql> create table DemoTable771 (
Joiningdate datetime,
Relievingdate datetime
);
Query OK, 0 rows affected (1.15 sec)
mysql> insert into DemoTable771 values('2016-01-21','2016-09-23');
Query OK, 1 row affected (0.27 sec)
mysql> insert into DemoTable771 values('2019-01-21','2019-09-23');
Query OK, 1 row affected (0.16 sec)
mysql> insert into DemoTable771 values('2017-04-01','2018-12-31');
Query OK, 1 row affected (0.20 sec)
mysql> insert into DemoTable771 values('2019-04-01','2019-12-31');
Query OK, 1 row affected (0.25 sec)
সকল রেকর্ড দেখানো
mysql> select * from DemoTable771;
+---------------------+---------------------+ | Joiningdate | Relievingdate | +---------------------+---------------------+ | 2016-01-21 00:00:00 | 2016-09-23 00:00:00 | | 2019-01-21 00:00:00 | 2019-09-23 00:00:00 | | 2017-04-01 00:00:00 | 2018-12-31 00:00:00 | | 2019-04-01 00:00:00 | 2019-12-31 00:00:00 | +---------------------+---------------------+ 4 rows in set (0.00 sec)
বর্তমান তারিখ যাচাই করা
NOW() ফাংশন বর্তমান তারিখ এবং সময় দেয়। BETWEEN inclusive (উভয় প্রান্তই অন্তর্ভুক্ত) করে।
mysql> select * from DemoTable771 where NOW() between Joiningdate and Relievingdate;
মান लीজिए বর্তমান তারিখ ২০১৯ সালের কোনো দিন, তাহলে আউটপুট:
+---------------------+---------------------+ | Joiningdate | Relievingdate | +---------------------+---------------------+ | 2019-01-21 00:00:00 | 2019-09-23 00:00:00 | | 2019-04-01 00:00:00 | 2019-12-31 00:00:00 | +---------------------+---------------------+ 2 rows in set (0.07 sec)
ব্যবহারিক প্রয়োগ
এই কোয়েরিটি কর্মচারীর বর্তমান কর্মরত অবস্থা যাচাইতে, সক্রিয় সাবস্ক্রিপশন খুঁজতে, বা যেকোনো সময়-সীমাবদ্ধ রেকর্ড ফিল্টার করতে ব্যবহার করা হয়।
দ্রষ্টব্য: NOW() প্রতিবার কোয়েরি রান করার সময় বর্তমান সময় দেয়। যদি নির্দিষ্ট তারিখ দরকার হয়, তবে '2019-06-15' এর মতো লিটারেল ব্যবহার করুন।