Oracle中使用case语句的Year函数

时间:2018-07-31 12:35:57

标签: sql oracle oracle12c

我正在尝试使用oracle中的以下case语句提取年份,但是在YEAR函数上收到无效的标识符错误。有人知道我可能会出问题的地方,或者如何根据以下内容提取一年?

YEAR(CASE when XYX = 'Hired - External'
 AND YZN = 'Hire' THEN  CURRENT_DATE END) AS P_YEAR

1 个答案:

答案 0 :(得分:3)

Oracle没有year函数;也许您在其他DBMS产品下看到了它。

您需要extract

CASE when XYX = 'Hired - External' AND YZN = 'Hire'
  THEN extract(year from CURRENT_DATE) END AS P_YEAR

这似乎有些奇怪,因为它将为您提供今天的年份(在您的会话时区中),而不是与数据相关的任何年份。