您的位置:首页 > 数据库 > Oracle

关于根据oracle字段长度更新字段值

2016-04-16 12:16 609 查看
今天遇到一个问题,WMS从SAP那边同步过来的产品表里面的品牌类型跟同步过来的物料主数据里面的品牌类型对应不上,暂时解决办法是将品牌类型的ID前面需要加0处理。
首先说一下这个有几种方案可以用(暂列2种):
第一种:

oracle数据库数据前面加0;

例如:一个varchar(2) 字段,里面有数据4和04,这2个应该是相等的,在查询这个字段的时候, 再4的左边加一个0。
采用处理WMS的查询方法在特定的值前面加0判断;
select * from table where lpad(字段,2,'0')='05';
第二种:
更新WMS品牌表,把0加上;
第一步查询出长度为2的ID:
select ID from tablename where length(ID)=2;
第二步添加0:
select lpad(ID,3,'0') from tablename;
第三步更新值:
update tablename set ID=lpad(ID,3,'0') where length(ID)=2;
以上个人操作总结,实属ORACLE菜鸟。欢迎大牛指教。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: