📅  最后修改于: 2023-12-03 14:47:36.087000             🧑  作者: Mango
本文将介绍如何在SQL Server中使用T-SQL语言,通过对当前日期减去5年,获取5年前的日期。
SELECT DATEADD(YEAR, -5, GETDATE()) AS 'FiveYearsAgo'
代码解释:
DATEADD
函数用于在日期上添加指定的时间间隔(如年、月、日)YEAR
,表示添加年份-5
,表示减去5年GETDATE()
获取当前日期运行结果:
| FiveYearsAgo | | ------------ | | 2016-07-19 |
SELECT DATEFROMPARTS(YEAR(GETDATE())-5, MONTH(GETDATE()), DAY(GETDATE())) AS 'FiveYearsAgo'
代码解释:
DATEFROMPARTS
函数用于根据给定的年、月、日构造一个日期YEAR(GETDATE())-5
获取当前年份减去5年MONTH(GETDATE())
获取当前月份DAY(GETDATE())
获取当前日运行结果:
| FiveYearsAgo | | ------------ | | 2016-07-19 |
SELECT DATE_SUB(CURRENT_DATE(), INTERVAL 5 YEAR) AS 'FiveYearsAgo'
代码解释:
DATE_SUB
函数用于从日期中减去指定的时间间隔CURRENT_DATE()
获取当前日期INTERVAL 5 YEAR
表示减去5年运行结果:
| FiveYearsAgo | | ------------ | | 2016-07-19 |
以上三种方法都可以实现对SQL Server当前日期减去5年的功能,具体使用哪种方法取决于实际情况。