Oracle 12c - 如何从一列转换为另一列

时间:2017-11-01 02:14:25

标签: sql oracle casting

我有桌子' t1'在oracle 12c中有一列:' id1 varchar2(5 BYTE)'

如何创建另一列' id2号码(5,0)'在同一个表中并将id1列中的所有记录复制到它?

(列#id; id1'中的值依次为数字)

2 个答案:

答案 0 :(得分:2)

ALTER TABLE T1 ADD (ID2  NUMBER(5, 0));

UPDATE T1 SET ID2 = ID1;

VARCHAR2和NUMBER之间的隐式转换应该处理类型差异,假设ID1中的所有字符都在0-9范围内。

祝你好运。

答案 1 :(得分:0)

首先在表格中添加列

alter table table1 add(id2 number(5,0));

然后只需复制新列中的现有列

update table1 set id1=id2;