mysql 往表中insert的時候如何讓主鍵id按當前表的最大值自動增長?


示例:

create table _yang_test(id BIGINT PRIMARY KEY,name VARCHAR(50));
select @a:=@a+1 as new_id,id,name  from _yang_test p,(select @a:=max(id) from _yang_test ) r ;

上面的new_id就是你想拿到的id。

本人在實際項目中的應用:

insert into srba_login
select @a:=@a+1 as id,a.sa_id,a.code as name,16 as account_type,null as last_login_time,null as last_login_ip,
1 as type,CONCAT(NOW(),'初始化統一社會信用代碼') as remark,1 as status,0 as deleted,1 as insert_sa_id,NOW() as insert_time,null as update_sa_id,null as update_time,'10.3.1.108' as ip
 from srba_organ_member a LEFT JOIN srba_login_count b on a.sa_id = b.sa_id  and a.code = b.name ,(select @a:=max(id) from srba_login where id <300000) r
where b.id is null and LENGTH(a.code)=18

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM