用于 SQL Server 的 .NET Framework 数据提供程序(SqlClient)提供日期与时间的函数,用于对System.DateTime
输入值执行操作,并返回string
、数字或者System.DateTime
类型的结果值。 这些函数位于 SqlServer 命名空间中,使用 SqlClient 时可用。 提供程序的命名空间属性允许 Entity Framework 发现此提供程序用于特定构造(如类型和函数)的前缀。 下表显示了 SqlClient 日期和时间函数。
功能 | DESCRIPTION |
---|---|
DATEADD(datepart, number, date) |
返回一个新 DateTime 值,它是在指定日期的基础上加上一个时间间隔之后得到的结果。论点 datepart :一个 String ,表示用于返回新值的日期部分。number :用于递增datepart 的 Int32 、Int64 、Decimal 或Double 值。date: 一个表达式,返回精度为 0 到 7 的 DateTime 、DateTimeOffset 或 Time ,或日期格式的字符串。返回值 精度为 0 到 7 的新 DateTime 、DateTimeOffset 或 Time 值。示例 SqlServer.DATEADD('day', 22, cast('6/9/2006' as DateTime)) |
DATEDIFF(datepart,startdate,enddate) |
返回两个指定日期之间所跨的日期和时间边界的数目。 论点 datepart :一个 String ,表示用于计算差异的日期部分。startdate :计算的开始日期是一个表达式,可以返回DateTime 、DateTimeOffset 或Time 的值,精度为 [0-7],或者是一个符合日期格式的字符串。enddate: 计算的结束日期是一个表达式,返回DateTime 、DateTimeOffset 或Time 值,精度为 [0-7],或者以日期格式返回字符字符串。返回值 一个 Int32 。示例 SqlServer.DATEDIFF('day', cast('6/9/2006' as DateTime), cast('6/20/2006' as DateTime)) |
DATENAME(datepart, date) |
返回一个字符串,表示指定日期的某一部分。 论点 datepart :一个 String ,表示用于返回新值的日期部分。date :一个表达式,可以返回 DateTime, 、DateTimeOffset 或 Time 精度为[0-7]的值,或一个采用日期格式的字符串。返回值 表示指定日期的指定日期部分的字符串。 示例 SqlServer.DATENAME('year', cast('6/9/2006' as DateTime)) |
DATEPART(datepart, date) |
返回表示指定日期的指定日期部分的整数。 论点 datepart :一个 String ,表示用于返回新值的日期部分。date :一个返回DateTime, 或DateTimeOffset, 或Time 值(精度为[0-7])或日期格式的字符串的表达式。返回值 指定日期的指定日期部分(以 Int32 表示)。示例 SqlServer.DATEPART('year', cast('6/9/2006' as DateTime)) |
DAY(date) |
以整数形式返回指定日期的日期。 论点 date :类型 DateTime 或 DateTimeOffset 精度为 0-7 的表达式。返回值 指定日期的“日”(以 Int32 表示)。示例 SqlServer.DAY(cast('6/9/2006' as DateTime)) |
GETDATE() |
为 datetime 值生成以 SQL Server 内部格式表示的当前日期和时间。 返回值 DateTime 类型的当前系统日期和时间(精度为 3)。示例 SqlServer.GETDATE() |
GETUTCDATE() |
生成 UTC(协调世界时或格林威治平均时间)格式的日期时间值。 返回值 UTC 格式的 DateTime 值(精度为 3)。示例 SqlServer.GETUTCDATE() |
MONTH(date) |
以整数形式返回指定日期的月份。 论点 date :类型 DateTime 或 DateTimeOffset 精度为 0-7 的表达式。返回值 指定日期的月份(以 Int32 表示)。示例 SqlServer.MONTH(cast('6/9/2006' as DateTime)) |
YEAR(date) |
以整数形式返回指定日期的年份。 论点 date :类型 DateTime 或 DateTimeOffset 精度为 0-7 的表达式。返回值 指定日期的年度(以 Int32 表示)。示例 SqlServer.YEAR(cast('6/9/2006' as DateTime)) |
SYSDATETIME() |
返回 DateTime 精度为 7 的值。返回值 精度为 7 的 DateTime 值。示例 SqlServer.SYSDATETIME() |
SYSUTCDATE() |
生成 UTC(协调世界时或格林威治平均时间)格式的日期时间值。 返回值 UTC 格式的 DateTime 值(精度为 7)。示例 SqlServer.SYSUTCDATE() |
SYSDATETIMEOFFSET() |
返回一个精度为 7 的 DateTimeOffset 。返回值 UTC 格式的 DateTimeOffset 值(精度为 7)。示例 SqlServer.SYSDATETIMEOFFSET() |
有关 SqlClient 支持的日期和时间函数的详细信息,请参阅日期和时间数据类型和函数(Transact-SQL)。