2017-10-11 50 views
1

我与datetime值SQL代码-182算术表达式无效日期值

,当我尝试运行此代码片段:其中R.CURR_PRD_NDT是

   (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, 

日期值。我该如何解决它?

谢谢!

+1

不要引用数字。 '当年(R.Curr_Prd_Ndt)= 2014' – Siyual

+0

我试过......没有影响,当我删除报价。同样的错误。 – Ardia

+1

哪个操作系统?你可以发布整个声明吗? – MichaelTiefenbacher

回答

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 
+0

哇....我永远不会想到会引起-182。有效!谢谢一堆! – Ardia

1

你不应该用一年的别名;这是一个保留的函数名称。