我得到SQL代码-182具有日期时间值的算术表达式无效
当我尝试运行这段代码时:
(CASE
WHEN YEAR(R.CURR_PRD_NDT) = 2014
THEN 0
WHEN YEAR(R.CURR_PRD_NDT) = 2015
THEN 1
WHEN YEAR(R.CURR_PRD_NDT) = 2016
THEN 2
END) YEAR,
其中R.CURR_PRD_NDT是DATE值。我该如何解决?
谢谢!
答案 0 :(得分:1)
如果您将year
作为别名,则会出现错误,尝试将其更改为其他名称
(CASE
WHEN YEAR(R.CURR_PRD_NDT) = 2014
THEN 0
WHEN YEAR(R.CURR_PRD_NDT) = 2015
THEN 1
WHEN YEAR(R.CURR_PRD_NDT) = 2016
THEN 2
END) as YEAR_value
答案 1 :(得分:1)
你不应该使用YEAR作为别名;这是一个保留的函数名称。