当前位置:首页 > 数据库 > Oracle技术

Oracle批量修改有关问题 求大神 急求

优良自学吧提供Oracle批量修改有关问题 求大神 急求,Oracle批量修改问题 求大神 急求我在excel 导入的表,描述下情况: 姓名      课程      课程编号 张三   &

Oracle批量修改问题 求大神 急求
我在excel 导入的表,描述下情况:
姓名      课程      课程编号
张三      语文      001
李四      语文      001    
这样是对的 
现在的情况 
姓名     课程       课程编号
张三     语文      001
李四     语文      002
课程编号是根据 条数 增加的 现在有没有快速的办法 该成按课程编号的   数据量大 有4W条!!!
跪求大神!
------解决方案--------------------
4万条对Oracle来说可是毛毛雨啊
update 表 t set 课程编号=(select to_char(count(distinct 课程)+1,'fm000') from 表 where 课程<t.课程)

最好还是建个课程的信息表,在表中配好课程编号,对应地更新到数据表中

这个表...看着就让我想起某某范式来着
------解决方案--------------------
update table set 课程编号=rownum
------解决方案--------------------
先创建一个表2,里面只需要保存课程名称和课程编号两列数据,课程名称列设为主键。然后用如下语句:
update (select a.课程编号 a, b.课程编号 b from 表1 a,表2 b where a.课程=b.课程) set a=b
就把所有数据全部更新过来了。
------解决方案--------------------
建议楼主用序列号,每次用序列号的下一个值就行了

(本文来自互联网,不代表搜站(http://www.ylzx8.cn/)的观点和立场)
本站所有内容来自互联网,若本站收录的信息无意侵犯了贵司版权,请给我们来信(ylzx8cn@163.com),我们会及时处理和回复,谢谢