কম্পিউটার টিউটোরিয়াল

MySQL-এ বর্তমান তারিখ (NOW/CURDATE) থেকে ছোট তারিখের রেকর্ড বের করা


টেবিল তৈরি এবং ডেটা ইনসার্ট

mysql> create table DemoTable1877 ( DueDate datetime ); Query OK, 0 rows affected (0.00 sec)
mysql> insert into DemoTable1877 values('2019-12-10'); Query OK, 1 row affected (0.00 sec)
mysql> insert into DemoTable1877 values('2019-12-05'); Query OK, 1 row affected (0.00 sec)
mysql> insert into DemoTable1877 values('2019-12-07'); Query OK, 1 row affected (0.00 sec)
mysql> insert into DemoTable1877 values('2019-12-09'); Query OK, 1 row affected (0.00 sec)

সব রেকর্ড

mysql> select * from DemoTable1877;
+---------------------+
| DueDate             |
+---------------------+
| 2019-12-10 00:00:00 |
| 2019-12-05 00:00:00 |
| 2019-12-07 00:00:00 |
| 2019-12-09 00:00:00 |
+---------------------+
4 rows in set (0.00 sec)

বর্তমান তারিখ

mysql> select curdate();
+------------+
| curdate()  |
+------------+
| 2019-12-08 |
+------------+
1 row in set (0.00 sec)

বর্তমান তারিখের চেয়ে ছোট DueDate বের করা

mysql> select * from DemoTable1877 where DueDate < now();
+---------------------+
| DueDate             |
+---------------------+
| 2019-12-05 00:00:00 |
| 2019-12-07 00:00:00 |
+---------------------+
2 rows in set (0.00 sec)

ব্যাখ্যা: NOW() DATETIME ফেরত দেয় (টাইমসহ), CURDATE() শুধু DATE। DATETIME কলামের সাথে NOW() তুলনায় টাইম কম্পোনেন্টও বিবেচনা হয়। শুধু ডেট কম্পেয়ার করতে চাইলে DATE(DueDate) < CURDATE() বা DueDate < CURDATE() ব্যবহার করুন (MySQL অটো কনভার্ট করে)।

  1. MySQL에서 현재 날짜 기준 1일 이상 미래/과거 데이터 조회 (INTERVAL 활용)

  2. MySQL에서 현재 날짜에 등록된 사용자 수 세기 (COUNT + GROUP BY MONTH)

  3. MySQL-এ UNIX_TIMESTAMP(NOW()) ব্যবহার করে বর্তমান টাইমস্ট্যাম্প ইন্টিজার হিসেবে সংরক্ষণ করা

  4. MySQL-এ DATE_ADD ব্যবহার করে টেবিলের তারিখ আপডেট করা (বছর যোগ/বিয়োগ)