ลองใช้คำสั่ง DATEDIFF เพื่อหาจำนวนวันของ 2 วันที่โดยใช้ฐานข้อมูล MariaDB แต่รันแล้วไม่สำเร็จ ขึ้นข้อความผิดพลาดว่า ERROR 1582 (42000): Incorrect parameter count in the call to native function 'DATEDIFF' แบบนี้ต้องแก้ไขอย่างไร
MariaDB [db_test]> SELECT DATEDIFF(day, '2022/01/31', '2022/01/01') AS DateDiff;
ERROR 1582 (42000): Incorrect parameter count in the call to native function 'DATEDIFF'
วิธีแก้ไข
กรณีใช้ฐานข้อมูล MariaDB คำสั่ง DATEDIFF จะรับค่า arguments แค่ 2 ค่าเท่านั้น คือ วันที่ตัวที่ 1 และวันที่ตัวที่ 2 และจะคืนค่าเป็นจำนวนวัน ให้ลบ argument แรกที่เป็น day ออก สามารถแก้ไขคำสั่งได้ดังนี้
SELECT DATEDIFF('2022/01/31', '2022/01/01') AS DateDiff;
+----------+
| DateDiff |
+----------+
| 30 |
+----------+
1 row in set (0.001 sec)