源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

通过sql语句将blob里的char取出来转成数字保存在其它字段

  • 时间:2021-10-17 18:45 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:通过sql语句将blob里的char取出来转成数字保存在其它字段
这个需求是有个表结构,本身设计为 [url=http://www.1sucai.cn/upload/201109/20110913233204856.png][img]http://files.jb51.net/upload/201109/20110913233204415.png[/img] [/url] 但现在需要将blob里地17、18、19三个字段里的数据作为数字保存在blob外新增的三个字段Gem1 Gem2 Gem3上。 通过下面的sql语句可以做到: [b]1、增加三个字段:[/b]
[u]复制代码[/u] 代码如下:
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;
[b]2、使用下面的命令把blob里的数据拷贝出来[/b] 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转成16进制的字符串 substr(str,beginIdx,num) 将str从beginIdx开始的字符串截取出来,截取长度为num conv(N,from_base,to_base) N是要转换的数据,from_base是原进制,to_base是目标进制。
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部