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

MySQL-এ ফাংশন ব্যবহার করে তারিখ কীভাবে ক্যালকুলেট করবেন?

MySQL-এ, আমরা নিচের ফাংশনগুলো ব্যবহার করে তারিখ ক্যালকুলেট করতে পারি:

  • CURDATE() ফাংশন - এটি কম্পিউটারের বর্তমান তারিখ রিটার্ন করে।
  • YEAR() ফাংশন - এটি নির্দিষ্ট তারিখের বছর রিটার্ন করে।
  • MONTH() ফাংশন - এটি নির্দিষ্ট তারিখের মাস রিটার্ন করে।
  • DAY() ফাংশন - এটি নির্দিষ্ট তারিখের দিন রিটার্ন করে।
  • RIGHT() ফাংশন - এটি ফাংশনে নির্দিষ্ট সংখ্যক ক্যারেক্টার রিটার্ন করে দেওয়া তারিখ থেকে। এক্সপ্রেশনের যে অংশটি RIGHT() ফাংশনের রিটার্নের সাথে তুলনা করে সেটি ১ বা ০ মূল্যায়ন করে।

এটি বুঝতে, 'Collegedetail' নামক টেবিল থেকে নিচের ডাটা বিবেচনা করুন:

mysql> SELECT * FROM Collegedetail;
+------+---------+------------+
| ID   | Country | Estb       |
+------+---------+------------+
| 111  | INDIA   | 2010-05-01 |
| 130  | INDIA   | 1995-10-25 |
| 139  | USA     | 1994-09-25 |
| 1539 | UK      | 2001-07-23 |
| 1545 | Russia  | 2010-07-30 |
+------+---------+------------+
5 rows in set (0.00 sec)

নিচের কোuery-তে, আমরা সকল ভিন্ন ডেট ফাংশন ব্যবহার করে DATE ক্যালকুলেট করেছি:

mysql> SELECT ID, Estb, CURDATE(), YEAR(Estb), MONTH(Estb), DAY(Estb), 
    -> (RIGHT(CURDATE(),5) < RIGHT(estb,5)) AS 'Return' 
    -> FROM Collegedetail;
+------+------------+------------+------------+-------------+-----------+--------+
| ID   | Estb       | CURDATE()  | YEAR(Estb) | MONTH(Estb) | DAY(Estb) | Return |
+------+------------+------------+------------+-------------+-----------+--------+
| 111  | 2010-05-01 | 2017-11-30 | 2010       | 5           | 1         | 0      |
| 130  | 1995-10-25 | 2017-11-30 | 1995       | 10          | 25        | 0      |
| 139  | 1994-09-25 | 2017-11-30 | 1994       | 9           | 25        | 0      |
| 1539 | 2001-07-23 | 2017-11-30 | 2001       | 7           | 23        | 0      |
| 1545 | 2010-07-30 | 2017-11-30 | 2010       | 7           | 30        | 0      |
+------+------------+------------+------------+-------------+-----------+--------+
5 rows in set (0.00 sec)
mysql> SELECT ID, estb, CURDATE(), ((YEAR(CURDATE())-YEAR(estb))-(RIGHT(CURDATE(),5) FROM collegedetail;
+------+------------+------------+-----------+
| ID   | estb       | CURDATE()  | YEARS_OLD |
+------+------------+------------+-----------+
| 111  | 2010-05-01 | 2017-11-30 | 7         |
| 130  | 1995-10-25 | 2017-11-30 | 22        |
| 139  | 1994-09-25 | 2017-11-30 | 23        |
| 1539 | 2001-07-23 | 2017-11-30 | 16        |
| 1545 | 2010-07-30 | 2017-11-30 | 7         |
+------+------------+------------+-----------+
5 rows in set (0.00 sec)
  1. MySQL-এ তারিখে ১ দিন যোগ করা (DATE_ADD)

  2. MySQL-এ ডেটাতে ১ দিন যোগ কীভাবে করবেন?

  3. MySQL-এ টেবিলের ক্রিয়েশন এবং আপডেশন তারিখ জানা

  4. MySQL-এ ডেটা ফরম্যাট আপডেট করা (STR_TO_DATE)