📅  最后修改于: 2023-12-03 14:52:34.897000             🧑  作者: Mango
在 SQL 中,我们经常需要获取当前日期和时间来进行日期计算、时序分析等操作。下面介绍几种获取当前日期和时间的方法:
SQL 中内置了一些函数可以获取系统日期和时间,如当前年份、月份、日等。这里主要介绍 GETDATE()
和 CURRENT_TIMESTAMP
两个常用函数。
-- 获取当前日期和时间
SELECT GETDATE() AS 'Current DateTime',
CURRENT_TIMESTAMP AS 'Current Timestamp';
执行结果如下:
| Current DateTime | Current Timestamp | | --------------------- | ------------------------------ | | 2022-08-12 16:18:40.0 | 2022-08-12 16:18:40.0902667 +08 |
如果需要获取当前日期或时间的指定格式,可以使用 CAST
函数进行转换。
-- 获取当前日期,格式为 YYYY-MM-DD
SELECT CAST(GETDATE() AS DATE) AS 'Current Date';
-- 获取当前时间,格式为 HH:MM:SS
SELECT CAST(GETDATE() AS TIME) AS 'Current Time';
执行结果如下:
| Current Date | Current Time | | ------------ | ------------ | | 2022-08-12 | 16:18:40 |
如果需要获取系统时间的某一部分,例如当前年份、月份、日、小时、分钟、秒等,可以使用 DATEPART
函数。
SELECT DATEPART(YEAR, GETDATE()) AS 'Current Year',
DATEPART(MONTH, GETDATE()) AS 'Current Month',
DATEPART(DAY, GETDATE()) AS 'Current Day',
DATEPART(HOUR, GETDATE()) AS 'Current Hour',
DATEPART(MINUTE, GETDATE()) AS 'Current Minute',
DATEPART(SECOND, GETDATE()) AS 'Current Second';
执行结果如下:
| Current Year | Current Month | Current Day | Current Hour | Current Minute | Current Second | | ------------ | ------------- | ----------- | ------------ | -------------- | -------------- | | 2022 | 8 | 12 | 16 | 18 | 40 |
以上就是获取当前日期和时间的几种方法,根据实际情况选用。