如何增加一列循环数字的辅助列
比如我有如下的表
ID NAME
1 A
2 B
3 C
4 D
5 E
6 F
7 G
...
...
现在要增加一列辅助列,以指定的数字无限循环,比如指定是3
结果如下,就是原表不动,增加一列
ID NAME newcol
1 A 1
2 B 2
3 C 3
4 D 1
5 E 2
6 F 3
7 G 1
8 H 2
...
...
感觉要用rownumber来做,但想了半天貌似没有简便方法.
求大神指点
[解决办法]
update table可行不?
set newcol=id%3
SQL> update tab_simo set age = (case when mod(rownum,3)=0 then 3 else mod(rownum,3) end);
8 rows updated
SQL> select * from tab_simo;
ID NAME AGE
---------- ------- ----------
1 A 1
2 B 2
3 C 3
4 D 1
5 E 2
6 F 3
7 G 1
8 H 2
8 rows selected