একটি ফাংশন তৈরি করা যায় যা দুটি তারিখ আর্গুমেন্ট হিসেবে নেবে এবং বছর, মাস, দিনের পার্থক্য ফেরত দেবে। নিচের মতো ফাংশন তৈরি করুন:
mysql> CREATE FUNCTION date_difference(Date1 DATE, date2 DATE) RETURNS VARCHAR(30)
-> RETURN CONCAT(
-> @years := TIMESTAMPDIFF(YEAR, date1, date2),IF (@years = 1, ' year, ', ' years, '),
-> @months := TIMESTAMPDIFF(MONTH, DATE_ADD(date1, INTERVAL @years YEAR), date2),IF (@months = 1, ' month, ', ' months, '),
-> @days := TIMESTAMPDIFF(DAY, DATE_ADD(date1, INTERVAL @years * 12 + @months MONTH), date2),IF (@days = 1, ' day', ' days')) ;
Query OK, 0 rows affected (0.00 sec)
এখন ফাংশনে তারিখ আর্গুমেন্ট হিসেবে পাস করুন:
mysql> Select date_difference('2015-11-16','2016-12-17') AS Difference;
+------------------------+
| Difference |
+------------------------+
| 1 year, 1 month, 1 day |
+------------------------+
1 row in set (0.00 sec)
উপরের ফলাফল দুটি নির্দিষ্ট তারিখের মধ্যে বছর, মাস, দিনের পার্থক্য দেখাচ্ছে।