Mysql SQL用户定义函数,用于计算两个日期之间的天数

Mysql SQL用户定义函数,用于计算两个日期之间的天数,mysql,sql,date,user-defined-functions,Mysql,Sql,Date,User Defined Functions,错误:“开始”处或附近出现语法错误 第3行:开始 我错过了什么。我尝试了许多变化,但都没有解决它。我正在使用MySQL 试试这个: CREATE FUNCTION weekdays (DATE1 DATETIME, DATE2 DATETIME) RETURNS INTEGER BEGIN RETURN DATEDIFF(day, DATE1, DATE2); END DATEDIFF只取两个参数。它对我的作用: delimiter $$ CREA

错误:“开始”处或附近出现语法错误 第3行:开始

我错过了什么。我尝试了许多变化,但都没有解决它。我正在使用MySQL

试试这个:

CREATE FUNCTION weekdays (DATE1 DATETIME, DATE2 DATETIME) 
    RETURNS INTEGER
    BEGIN 
        RETURN DATEDIFF(day, DATE1, DATE2);
    END
DATEDIFF
只取两个参数。

它对我的作用:

delimiter $$

CREATE FUNCTION weekdays (DATE1 DATETIME, DATE2 DATETIME) 
    RETURNS INTEGER
    BEGIN 
        RETURN DATEDIFF(DATE1, DATE2);
    END $$
选择A.DOCNUMBR、A.DOCDATE、DATEDIFF(DAY、A.DOCDATE、GETDATE())作为天数计算,
从RM_事务作为
其中A.CURTRXAMNT 0
结果以天数表示文档编号、文档日期和文档期限

如果您希望最终在Excel中创建账龄报告,这非常有用


Erwin PR

接受两个参数。这里有3个。你到底想做什么?问题是要求函数,而不是SQL
SELECT A.DOCNUMBR,A.DOCDATE,DATEDIFF(DAY,A.DOCDATE,GETDATE()) AS DAYS_CALC,
  FROM RM_TRANSACTIONS AS A
WHERE A.CURTRXAMNT <> 0