将DATENAME分配给VARCHAR2

时间:2016-10-11 07:53:29

标签: plsql variable-assignment

我是Pl / SQL的新手,我还没有找到将DATENAME(weekday, pd_date)分配给ps_weekdayname的方法,在这种情况下,在分配时会出现错误:

--Get day of week
  FUNCTION f_dayofweek(pd_date DATE) RETURN VARCHAR2 IS
    ps_weekdayname VARCHAR2;
  BEGIN
    ps_weekdayname = DATENAME(weekday, pd_date)
    RETURN ps_weekdayname;
  END;

还有其他方法来分配变量吗? 谢谢,

1 个答案:

答案 0 :(得分:1)

DATENAME是SQL Server函数,它在PL / SQL中不存在。 要使用PL / SQL获得相同的结果,您需要执行以下操作:

to_char(pd_date, 'DAY')

你的功能是这样的:

--Get day of week
  FUNCTION f_dayofweek(pd_date DATE) RETURN VARCHAR2 IS
    ps_weekdayname VARCHAR2;
  BEGIN
    ps_weekdayname := to_char(pd_date, 'DAY');
    RETURN ps_weekdayname;
  END;