代码select DATEPART(month,getutcdate())
返回一个整数,表示当前日期的数字月份值。
值MONTH
是interval参数的许多预定义选项之一。
该区间值的基础数据类型是什么?
declare @date datetime = getutcdate()
, @interval notNVarChar(16) = 'month' --what type should this be?
--Would it need quotes for assignment?
select DATEPART(@interval, @date)
答案 0 :(得分:2)
您可以通过制作动态SQL进行参数化,如下所示:
declare @date datetime
set @date = GETDATE()
declare @option varchar(50)
declare @sql varchar(max)
SET @option = 'MONTH' --Here you can set other options like hour, second, milisecond etc..
set @sql = 'SELECT DATEPART('+ @option + ',''' + CONVERT(varchar,@date,21)+''')'
print @sql
EXEC( @sql)
答案 1 :(得分:0)
没有 - 你无法参数化。
DATEPART ( datepart , date )
datepart
是将返回整数的日期部分(日期或时间值)。下表列出了所有有效的datepart参数。 用户定义的变量等效项无效。
(我的强调)
答案 2 :(得分:0)