SQL 用户定义函数计算两个日期之间的天数
SQL User Defined Function to calculate the number of days between two dates
CREATE FUNCTION weekdays (DATE1 DATETIME, DATE2 DATETIME)
RETURNS INTEGER
BEGIN
RETURN DATEDIFF(day, DATE1, DATE2);
END
错误:"BEGIN" 处或附近的语法错误
第 3 行:开始
我错过了什么。我尝试了多种变体,但还没有解决它。我正在使用 MySQL。
试试这个:
delimiter $$
CREATE FUNCTION weekdays (DATE1 DATETIME, DATE2 DATETIME)
RETURNS INTEGER
BEGIN
RETURN DATEDIFF(DATE1, DATE2);
END $$
DATEDIFF
只接受两个参数。
它对我有用:
SELECT A.DOCNUMBR,A.DOCDATE,DATEDIFF(DAY,A.DOCDATE,GETDATE()) AS DAYS_CALC,
FROM RM_TRANSACTIONS AS A
WHERE A.CURTRXAMNT <> 0
结果显示文档编号、文档日期和文档存在的天数。
如果您想稍后在 Excel 中最终创建账龄报告,这将非常有用。
欧文-PR
CREATE FUNCTION weekdays (DATE1 DATETIME, DATE2 DATETIME)
RETURNS INTEGER
BEGIN
RETURN DATEDIFF(day, DATE1, DATE2);
END
错误:"BEGIN" 处或附近的语法错误 第 3 行:开始
我错过了什么。我尝试了多种变体,但还没有解决它。我正在使用 MySQL。
试试这个:
delimiter $$
CREATE FUNCTION weekdays (DATE1 DATETIME, DATE2 DATETIME)
RETURNS INTEGER
BEGIN
RETURN DATEDIFF(DATE1, DATE2);
END $$
DATEDIFF
只接受两个参数。
它对我有用:
SELECT A.DOCNUMBR,A.DOCDATE,DATEDIFF(DAY,A.DOCDATE,GETDATE()) AS DAYS_CALC,
FROM RM_TRANSACTIONS AS A
WHERE A.CURTRXAMNT <> 0
结果显示文档编号、文档日期和文档存在的天数。
如果您想稍后在 Excel 中最终创建账龄报告,这将非常有用。
欧文-PR