Mysql实现自增长编号,日期+序列,序列定时归零
https://blog.csdn.net/u010355502/article/details/47155905/
Mysql生成序列---拼接字符串用于业务主键
https://blog.csdn.net/Good_omen/article/details/123838440
查看所有函数 mysql mysql查看函数命令
https://blog.51cto.com/u_16099204/7346171
mysql 怎么查看函数
https://blog.51cto.com/u_16213326/7300146
"系统号(字母带数字)" + get_trans_num()
get_trans_num() 是 mysql 里的定义函数名。
-- 查询需要用户权限
select * from mysql.proc where name='get_trans_num';
举例:拼接业务前缀+日期+填充字符— 创建函数(get_trans_num)
CREATE FUNCTION get_trans_num() RETURNS varchar(20) CHARSET utf8
BEGIN
DECLARE getval VARCHAR(24);
SET getval = (SELECT CONCAT('01',DATE_FORMAT(NOW(), '%Y%m%d'), LPAD((SELECT next_trans_num('trans_no')), 4, '0')));
RETURN getval;
END
-- 或者,获取日期+指定长度序列的编号
-- 定义, DECLARE getval VARCHAR(24),申明变量getval,SET getval =(),将结果赋值给getval:
BEGIN
DECLARE getval VARCHAR(24);
SET getval = (SELECT CONCAT(DATE_FORMAT(NOW(), '%Y%m%d%H%i%s'), LPAD((SELECT next_trans_num('trans_no')), 10, '0')));
RETURN getval;
END