mysql id從1開始自增 快速解決id不連續(xù)的問(wèn)題
mysql id從1開始自增 解決id不連續(xù)
作為一個(gè)強(qiáng)迫癥患者,對(duì)于表格內(nèi)某些行刪除之后,id不連續(xù)這個(gè)問(wèn)題完全無(wú)法容忍,一開始使用
TRUNCATE TABLE tablename
來(lái)實(shí)現(xiàn)id從頭自增,但是這個(gè)命令同時(shí)也會(huì)清空整個(gè)表,真的是坑爹啊。
后面才發(fā)現(xiàn)了正確的做法:
alter table tablename auto_increment = 1;
這個(gè)命令不會(huì)改動(dòng)現(xiàn)有的表的內(nèi)容和順序,同時(shí)新插入行的id會(huì)先使用已刪除的id,完美填補(bǔ)空缺id。
mysql自增id跳躍解決(不刪除數(shù)據(jù))
問(wèn)題描述:
從excel中導(dǎo)入大量數(shù)據(jù)到mysql,自增id沒有按順序自增,中間有很多跳過(guò)了,由于數(shù)量巨大,不想重新導(dǎo)入
解決思路:
按照id或者時(shí)間按從小到大排序==>獲取行號(hào)==>用行號(hào)替換原來(lái)的id
sql語(yǔ)句:
update tab as t1 join (select id,(@rowno:=@rowno+1) as rowno from tab a,(select (@rowno:=0)) b order by a.id) as t2 SET t1.id=t2.rowno WHERE t1.id=t2.id;
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持本站。
版權(quán)聲明:本站文章來(lái)源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請(qǐng)保持原文完整并注明來(lái)源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非www.sddonglingsh.com所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來(lái)源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來(lái),僅供學(xué)習(xí)參考,不代表本站立場(chǎng),如有內(nèi)容涉嫌侵權(quán),請(qǐng)聯(lián)系alex-e#qq.com處理。