[英]Specific String auto increment in mysql
我想為MySQL中的表Emp創建一個唯一的ID,例如“ Emp_0416_1”,“ Emp_0416_2”和“ Emp_0516_1”,“ Emp_0516_2”。
這里
Emp is stand for Employee,
04 is April month,
16 is year,
1 is emp code.
和
Emp is stand for Employee,
05 is May month,
16 is year,
1 is emp code.
表是:
create table emp (
id varchar(20),
name varchar(20)
);
當我插入emp名稱時,它將像上面的唯一id一樣自動遞增。
這是您想要的解決方案
CREATE PROCEDURE `proc_name`(in emp_code int,in emp_name varchar(256),in_date date)
BEGIN
declare temp_date varchar(256);
set temp_date= (select concat(
if(length(month(in_date))>1,month(in_date),concat(0,month(in_date))),right(year(in_date),2)
) as dateyear
);
INSERT into table_name(id,`name`)
select concat('emp_',temp_date,'_',emp_code)as emp_id,emp_name;
END
呼叫程序
call proc_name(2,'batman','2016-04-11')
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.