文章目录

SQL Server 提供了一系列用于处理日期和时间的函数,以下是一些常用的时间函数:

  • GETDATE():返回当前的日期和时间。
SELECT GETDATE();
  • CURRENT_TIMESTAMP:与 GETDATE() 类似,返回当前的日期和时间。
SELECT CURRENT_TIMESTAMP;
  • DATEADD:给日期添加指定的时间间隔。
SELECT DATEADD(day, 1, '2024-07-16'); -- 将日期增加一天
  • DATEDIFF:计算两个日期之间的时间差。
SELECT DATEDIFF(day, '2024-07-15', '2024-07-16'); -- 返回 1
  • DATEFROMPARTS:根据年份、月份和日创建一个日期。
SELECT DATEFROMPARTS(2024, 7, 16);
  • DATETIME2FROMPARTS:根据年、月、日、时、分、秒、毫秒创建一个 datetime2 值。
SELECT DATETIME2FROMPARTS(2024, 7, 16, 12, 0, 0, 0);
  • DATENAME:返回日期部分的名称,如年、月、日、星期等。
SELECT DATENAME(weekday, '2024-07-16'); -- 返回星期的名称
  • DATEPART:返回日期部分的整数值,如年、月、日等。
SELECT DATEPART(year, '2024-07-16'); -- 返回 2024
  • DAY:从 datetime 值中提取日。
SELECT DAY('2024-07-16'); -- 返回 16
  • MONTH:从 datetime 值中提取月。
SELECT MONTH('2024-07-16'); -- 返回 7
  • YEAR:从 datetime 值中提取年。
SELECT YEAR('2024-07-16'); -- 返回 2024
  • SWITCHOFFSET:将 datetimeoffset 值的时间部分减去指定的时区偏移量。
SELECT SWITCHOFFSET(datetimeoffset_column, '-01:00');
  • TODATETIMEOFFSET:将 datetime2 值转换为 datetimeoffset 值,使用指定的时区偏移量。
SELECT TODATETIMEOFFSET('2024-07-16T12:00:00', '-01:00');
  • FORMAT:格式化日期和时间为指定的字符串格式。
SELECT FORMAT(GETDATE(), 'yyyy-MM-dd HH:mm:ss');
  • CASTCONVERT:将日期和时间转换为不同的格式或数据类型。
SELECT CAST(GETDATE() AS DATE); -- 转换为只包含日期的值
SELECT CONVERT(varchar, GETDATE(), 121); -- 使用特定的样式代码转换为字符串
  • ISDATE:检查字符串是否可以解释为有效的日期。
SELECT ISDATE('2024-07-16'); -- 返回 1(真)
  • EOMONTH:返回日期所在月的最后一天。
SELECT EOMONTH('2024-07-16'); -- 返回 2024-07-31
  • POWER:虽然主要用于数值计算,但也可以用于计算日期时间的偏移,例如,POWER(2, 10) 可以计算出日期时间的秒数偏移。
Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐