create or replace FUNCTION DATE_FORMAT(date1 varchar2, yangshi varchar2)
RETURN varchar(30)
AS
format1 varchar(30);
format2 varchar(30);
format3 varchar(30);
format4 varchar(30);
format5 varchar(30);
format6 varchar(30);
format7 varchar(30);
format8 varchar(30);
format9 varchar(30);
format10 varchar(30);
BEGIN
-- 如果时间是NULL 则返回NULL
IF date1 IS NULL THEN
RETURN NULL;
END IF;
format1:='%Y-%m-%d %H:%i:%s';
format2:='%Y-%m-%d %H:%i';
format3:='%Y-%m-%d %H';
format4:='%Y-%m-%d';
format5:='%Y-%m';
format6:='%Y';
format7:='%m-%d %H:%i:%s';
format8:='%m-%d %H:%i';
format9:='%m-%d %H';
format10:='%m-%d';
-- 如果格式化样式为NULL 则返回日期本身
IF yangshi IS NULL THEN
RETURN date1;
END IF;
-- 如果时间以及格式化样式不为NULL 根据请求样式返回格式化后的日期
IF yangshi = format1 THEN
RETURN to_char(date1,'YYYY-MM-DD hh24:mi:ss');
END IF;
IF yangshi = format2 THEN
RETURN to_char(date1,'YYYY-MM-DD hh24:mi');
END IF;
IF yangshi = format3 THEN
RETURN to_char(date1,'YYYY-MM-DD hh24');
END IF;
IF yangshi = format4 THEN
RETURN to_char(date1,'YYYY-MM-DD');
END IF;
IF yangshi = format5 THEN
RETURN to_char(date1,'YYYY-MM');
END IF;
IF yangshi = format6 THEN
RETURN to_char(date1,'YYYY');
END IF;
IF yangshi = format7 THEN
RETURN to_char(date1,'MM-DD hh24:mi:ss');
END IF;
IF yangshi = format8 THEN
RETURN to_char(date1,'MM-DD hh24:mi');
END IF;
IF yangshi = format9 THEN
RETURN to_char(date1,'MM-DD hh24');
END IF;
IF yangshi = format10 THEN
RETURN to_char(date1,'MM-DD');
END IF;
END DATE_FORMAT;
记录达梦库定义DATE_FORMAT脚本
最新推荐文章于 2024-08-07 14:25:25 发布