使用如下函数实例
select trim(to_char(1,'00')) from dual; --转换后的效果就是:01
你上面的语句可以这样写:
if :new.code_carrier is null then
select to_char(nvl(max(to_number(code_carrier)), 0) + 1, '0000') -- 几位就写几个0
into :new.code_carrier
from tb_code_carrier;
end if;
不过每次都需要 max() 不是很费效率吗?你可以使用序列进行转换