SQL Server提供了一些内置函数,用于处理和操作时间相关的数据。下面是一些常用的SQL Server时间的内置函数:
GETDATE():获取当前日期和时间。
示例:SELECT GETDATE();
YEAR()、MONTH()、DAY():分别用于提取日期的年、月、日部分。
示例:SELECT YEAR(date_column), MONTH(date_column), DAY(date_column) FROM table_name;
DATEPART():用于提取日期或时间的指定部分的值。常用的参数有year、month、day、hour、minute、second等。
示例:SELECT DATEPART(year, date_column), DATEPART(month, date_column) FROM table_name;
DATEADD():用于在日期上增加或减少指定的时间间隔。
示例:SELECT DATEADD(day, 1, date_column) FROM table_name;
DATEDIFF():用于计算两个日期之间的时间差,返回的单位可以是年、月、天、小时、分钟、秒等。
示例:SELECT DATEDIFF(day, start_date, end_date) FROM table_name;
GETDATE()、DATEADD()和DATEDIFF()函数的组合:可以使用这三个函数结合,进行一些常见的时间操作,如获取当前日期的前一天、计算相对日期等。
示例:SELECT DATEADD(day, -1, GETDATE()) AS previous_day;
CONVERT():用于将一个数据类型转换为另一个数据类型。对于日期和时间,格式化 常用的参数有101(MM/dd/yyyy)和120(yyyy-MM-dd hh:mm:ss)。
示例:SELECT CONVERT(varchar, date_column, 101), CONVERT(varchar, date_column, 120) FROM table_name;