我正在尝试执行以下代码:
;with cte as
(
select
convert(varchar(50), joiningdate, 101) as joindate
from
employeedetail
)
declare @dateuse varchar(200)=cte.joindate
select datediff(dd, @dateuse, GETDATE())
from cte
但它显示错误:
Msg 156,Level 15,State 1,Line 909
附近的语法不正确
关键字'声明'。
我想使用包含joindate值的变量并根据它返回值。怎么样?
答案 0 :(得分:0)
您只能在脚本,过程或UDF中使用declare。不能在查询或视图中使用。
在这种情况下,您似乎甚至不需要CTE或类型转换。此查询将告诉您员工周围的天数,这似乎是目标:
select datediff(dd, joningdate, getdate()) from employeedetail