久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術文章
文章詳情頁

MySQL中如何給一個字段遞增賦值

瀏覽:2日期:2023-07-28 19:59:55
目錄MySQL給一個字段遞增賦值mysql set @rownum 變量 實現字段遞增賦值之前的需求新需求mysql 字段遞增賦值實現總結MySQL給一個字段遞增賦值

在mysql中,設計表時設計的是一次遞增,有時中間會刪除一兩行,導致ID不連續,這時,可以采用以下方法將ID改為連續的。

首先設置一個變量,初始值為0:

set @r:=0;

然后更新表中對應的ID列:

update tablename set id=(@r:=@r+1)

如果是插入,那就找一個記錄多的表t1

set @r:=0;insert into t select @r:=@r+1 from t1 limit 0, 2000mysql set @rownum 變量 實現字段遞增賦值

講述Mysql數據庫如何實現字段遞增賦值,解決門店重新連續編號問題。先看下應用場景。

之前的需求

有個門店信息表,包含門店名稱、門店類型等信息,表結構如下:

CREATE TABLE `sale_zd_shops` (? `sid` bigint(20) NOT NULL AUTO_INCREMENT,? `shop_id` varchar(32) NOT NULL COMMENT '門店ID,一串隨機數',? `shop_name` varchar(100) NOT NULL COMMENT '門店名稱',? `shop_nick` varchar(30) DEFAULT NULL COMMENT '門店別名',? `shop_type` int(11) DEFAULT NULL COMMENT '門店類型',新需求

因為門店重名概率比較多,尤其業務員溝通時幾乎用門店別名(簡稱)為主,重名概率更高,因此不利于業務溝通,為此提出對門店進行編號,簡單起見1000開始往上遞增編號,新表結構如下:

CREATE TABLE `sale_zd_shops` (? `sid` bigint(20) NOT NULL AUTO_INCREMENT,? `shop_id` varchar(32) NOT NULL COMMENT '門店ID,一串隨機數',? `shop_no` varchar(32) NOT NULL COMMENT '門店編號,1000往上遞增',? `shop_name` varchar(100) NOT NULL COMMENT '門店名稱',? `shop_nick` varchar(30) DEFAULT NULL COMMENT '門店別名',? `shop_type` int(11) DEFAULT NULL COMMENT '門店類型',

修改完表結構后,還需要進行shop_no數據處理,由于已經有好幾萬門店數據,不可能一一手工修改,為此需要sql 批處理。

mysql 字段遞增賦值實現set @rownum=10000;update sale_zd_shopsSET shop_no = (select @rownum := @rownum +1 as nid);

處理結果

sidshop_idshop_noshop_nameshop_type18fasdffsaer10001發廣告古古怪怪1028fasd12fsaer10002發廣告挺有意義2034fasddfsaer10003發廣挺告有意義20–––––<總結

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: MySQL 數據庫
相關文章:
主站蜘蛛池模板: 股票| 大理市| 班玛县| 高邑县| 西乌珠穆沁旗| 楚雄市| 陈巴尔虎旗| 靖安县| 砚山县| 寻甸| 正定县| 焉耆| 青田县| 扎鲁特旗| 凤冈县| 乐安县| 崇州市| 桃江县| 集安市| 苗栗县| 清水县| 莒南县| 浮山县| 靖远县| 丰台区| 东乡县| 兴宁市| 西乌珠穆沁旗| 陕西省| 宽城| 五台县| 泗水县| 金溪县| 双辽市| 肃宁县| 哈巴河县| 吉木乃县| 夹江县| 泰宁县| 卓资县| 通渭县|