通過sql語句將blob里的char取出來轉(zhuǎn)成數(shù)字保存在其它字段
這個(gè)需求是有個(gè)表結(jié)構(gòu),本身設(shè)計(jì)為
但現(xiàn)在需要將blob里地17、18、19三個(gè)字段里的數(shù)據(jù)作為數(shù)字保存在blob外新增的三個(gè)字段Gem1 Gem2 Gem3上。
通過下面的sql語句可以做到:
1、增加三個(gè)字段:
alter table EquipmentInfo add Gem1 TINYINT UNSIGNED default 0;
alter table EquipmentInfo add Gem2 TINYINT UNSIGNED default 0;
alter table EquipmentInfo add Gem3 TINYINT UNSIGNED default 0;
2、使用下面的命令把blob里的數(shù)據(jù)拷貝出來
update EquipmentInfo set Gem1=conv(substr(HEX(EquipmentBlob),17,2),16,10),Gem2=conv(substr(HEX(EquipmentBlob),19,2),16,10),Gem3=conv(substr(HEX(EquipmentBlob),21,2),16,10);
說明:
HEX(EquipmentBlob) 將EquipmentBlob轉(zhuǎn)成16進(jìn)制的字符串
substr(str,beginIdx,num) 將str從beginIdx開始的字符串截取出來,截取長度為num
conv(N,from_base,to_base) N是要轉(zhuǎn)換的數(shù)據(jù),from_base是原進(jìn)制,to_base是目標(biāo)進(jìn)制。
相關(guān)文章
MySQL數(shù)據(jù)庫char與varchar的區(qū)別分析及使用建議
本文主要介紹了mysql中VARCHAR與CHAR字符型數(shù)據(jù)的差異以及這兩種字符型數(shù)據(jù)在項(xiàng)目中的使用建議,真心不錯(cuò)。值得一看。小編有種受益匪淺的感覺。2014-09-09MySQL中使用FREDATED引擎實(shí)現(xiàn)跨數(shù)據(jù)庫服務(wù)器、跨實(shí)例訪問
這篇文章主要介紹了MySQL中使用FREDATED引擎實(shí)現(xiàn)跨數(shù)據(jù)庫服務(wù)器、跨實(shí)例訪問,本文講解了FEDERATED存儲(chǔ)引擎的描述、安裝與啟用FEDERATED存儲(chǔ)引擎、準(zhǔn)備遠(yuǎn)程服務(wù)器環(huán)境等內(nèi)容,需要的朋友可以參考下2014-10-10MySQL創(chuàng)建新用戶、增加賬戶的2種方法及使用實(shí)例
這篇文章主要介紹了MySQL創(chuàng)建新用戶、增加賬戶的2種方法及使用實(shí)例,本文同時(shí)也介紹了更新和修改密碼的方法,需要的朋友可以參考下2014-12-12windows mysql 自動(dòng)備份的幾種方法匯總
本篇文章主要對windows mysql 自動(dòng)備份的幾種方法進(jìn)行整理,具有很好的參考價(jià)值,需要的朋友一起來看下吧2016-12-12圖解Mysql中的LEFT?JOIN、RIGHT?JOIN與JOIN的區(qū)別
這篇文章主要介紹了圖解Mysql中的LEFT?JOIN、RIGHT?JOIN與JOIN的區(qū)別,Left?Join就是以左邊為基準(zhǔn),Inner?Join就是查兩個(gè)重復(fù)的部分,Right?Join就是以右邊為基準(zhǔn),需要的朋友可以參考下2023-11-11