mysql实现字符串主键自增

来源:互联网 发布:淘宝店铺如何激活手机 编辑:程序博客网 时间:2024/04/29 06:01

此处ID格式为E0001 这种5位的 其他格式请自行变动

#获取最大ID值set @val=(select user_id from user_info ORDER BY user_id desc LIMIT 0,1);#去掉第一位set @h=left(@val,1);#从第二位获取所有set @val=SUBSTR(@val,2);#转成整数并加一set @val=CONVERT(@val,SIGNED)+1;#格式化val并补位为0set @val=CONCAT(@h,LPAD(@val,4,'0'));SELECT @val;
以下为转化为Sql语句形式,mybaits用SqlProvider这种方式可能不不太好搞,因为如果要同一时间插入 需要 insert into select 这种东西来搞
但其实也可以搞 只是字段多了写出来看起来一大坨  还不好维护 , 如果是用xml的话应该比较好弄 可以直接用标签搞了  鉴于项目使用注解形式,
且此处业务并不频繁,所以就直接用个sql整出来了  
SELECT (SELECT CONCAT(LEFT(C.ID,1),LPAD(CONVERT(SUBSTR(C.ID,2),SIGNED)+1,4,'0')) FROM (SELECT USER_ID AS ID FROM USER_INFO ORDER BY USER_ID DESC LIMIT 0,1) AS C) AS CC


0 0
原创粉丝点击