以下函数过程
create function f_get_tablename
(
i_tjrq integer, --复制日期
v_tabname varchar(50) --基础表名
)
returns varchar(1000)
--
language sql
begin atomic
declare v_mtabname varchar(50) default '';--目标表名
if right(upper(v_tabname),4)='YYYY' then --分年表
set v_mtabname=replace(upper(v_tabname),'YYYY',rtrim(substr(char(i_tjrq),1,4)));
end if;
return v_mtabname;
end ;
现在系统里有多张结构相同的表,比如table_2010、table_2011...我想通过日期参数选择某一张表,比如
select * from f_get_tablename(20150808,'table_yyyy')
结果报错。
请问有什么办法吗
create function f_get_tablename
(
i_tjrq integer, --复制日期
v_tabname varchar(50) --基础表名
)
returns varchar(1000)
--
language sql
begin atomic
declare v_mtabname varchar(50) default '';--目标表名
if right(upper(v_tabname),4)='YYYY' then --分年表
set v_mtabname=replace(upper(v_tabname),'YYYY',rtrim(substr(char(i_tjrq),1,4)));
end if;
return v_mtabname;
end ;
现在系统里有多张结构相同的表,比如table_2010、table_2011...我想通过日期参数选择某一张表,比如
select * from f_get_tablename(20150808,'table_yyyy')
结果报错。
请问有什么办法吗