我想用SQL计算两个日期之间的差异。例如,如果我有以下日期:
如何计算以下方面的差异:
我知道某些 SQL 方言(例如 MySQL、PostgreSQL)具有特定功能,但我正在寻找一种在可能的情况下跨 SQL Server 运行的解决方案。 在 SQL Server 中实现此目的最有效的方法是什么?
这就是我尝试做的
几天
SELECT TIMESTAMPDIFF('2024-11-28', '2024-11-01') AS days_difference;
几个月
SELECT TIMESTAMPDIFF(MONTH, '2024-11-01', '2024-11-28') AS months_difference;
多年来
SELECT TIMESTAMPDIFF(YEAR, '2024-11-01', '2024-11-28') AS years_difference;
但它向我显示了一个错误
在sql server中,您可以使用DATEDIFF函数来计算两个日期之间的年、月、日差。
例如天数差异:
SELECT DATEDIFF(DAY, '2024-11-01', '2024-11-28') AS DifferenceInDays;