我有一个日期列。现在我的任务是创建一个 udf。此 UDF 的基本目的是检查日期的年份。这是在 ORACLE 中。
如果年份小于 1753,则将年份指定为 1753 并返回日期。
前任:
1) select xyz_fun('1800-01-01') from a_table => Return 1800 - 01 -01
2) select xyz_fun('1600-01-01') from a_table => Return 1753 - 01 -01
3) select xyz_fun('0001-01-01') from a_table => Return 1753 - 01 -01
返回值应该是日期。
我写了一个 UDF,但它返回警告,虽然没有显示警告。
create or replace function someschema.change_date(date1 in date) return date
;
begin
if( extract(year from date1) < 1753 )
then
return to_date('1753'||'-'|| to_char(date1,'MM')||'-'|| to_char(date1,'dd'),'yyyy-MM-dd');
else
return date1;
end if;
end;