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

MySQL DATEDIFF() ফাংশনের নেগেটিভ মান উপেক্ষা কীভাবে করবেন?


আমরা জানি DATEDIFF() ফাংশন দুটি তারিখের মধ্যে দিনের পার্থক্য বের করে। তাই এটি নেগেটিভ মানও ফেরত দিতে পারে।

mysql> select * from differ;
+------------+-------------+
| OrderDate  | WorkingDate |
+------------+-------------+
| 2017-10-22 | 2017-10-29  |
| 2017-10-25 | 2017-10-30  |
| 2017-10-25 | 2017-11-30  |
+------------+-------------+
3 rows in set (0.00 sec)

উপরের কোয়েরি 'differ' টেবিলের মান দেখাচ্ছে। এখন OrderDate এবং WorkingDate-এর পার্থক্য বের করলে নেগেটিভ মান আসবে:

mysql> Select DATEDIFF(OrderDate, WorkingDate)AS 'DIFFERENCE IN DAYS' from differ;
+--------------------+
| DIFFERENCE IN DAYS |
+--------------------+
| -7                 |
| -5                 |
| -36                |
+--------------------+
3 rows in set (0.00 sec)

কিন্তু MySQL ABS() ফাংশন ব্যবহার করে এই নেগেটিভ মানগুলো উপেক্ষা করা যায়:

mysql> Select ABS(DATEDIFF(OrderDate, WorkingDate))AS 'DIFFERENCE IN DAYS' from differ;
+--------------------+
| DIFFERENCE IN DAYS |
+--------------------+
| 7                  |
| 5                  |
| 36                 |
+--------------------+
3 rows in set (0.00 sec)

  1. MySQL-এ SUM ফাংশন কোনো মান না পাওয়া গেলে '০' রিটার্ন করা

  2. MySQL-এ UPDATE দিয়ে বুলিয়ান মান আপডেট করা

  3. MySQL-এ GROUP BY এবং HAVING দিয়ে একই কালাম মান والی সারি বের করা

  4. MySQL DATEDIFF() ফাংশন ব্যবহার করে বর্তমান তারিখ ও যোগদানের তারিখের পার্থক্য বের করা