create table temp_table (col1 char(10),endtime timestamp);表里有12万记录
现在要更新endtime为当天日期,但时间要唯一,不能重复。
update temp_table set endtime=TO_timestamp('2008-11-17', 'YYYY-MM-DD') + ROWNUM/3600/24/2;
更新的时间类似
17-11月-08 12.00.01.000000 上午
17-11月-08 12.00.01.000000 上午
17-11月-08 12.00.02.000000 上午
17-11月-08 12.00.02.000000 上午同一秒有两条记录
怎么样才能不重复,不是可以到微秒么

解决方案 »

  1.   

    你可以设置一个ID字段为主键呀,ID用一个系列来标识
      

  2.   

    update temp_table set endtime=TO_timestamp('2008-11-17', 'YYYY-MM-DD') + ROWNUM/3600/24; 
    不用除以2,就可以不重复了!
      

  3.   

    更新日期都要是2008-11-17,
     set endtime=TO_timestamp('2008-11-17', 'YYYY-MM-DD') + ROWNUM/3600/24
    12万记录的话,更新下来,有一部分日期会更新成2008-11-18。
    因为一天只有3600*24秒。
      

  4.   

     endtime=TO_timestamp('2008-11-17 00:00:01' ||to_char(rownum),
                        'YYYY-MM-DD HH24:MI:SS:FF6')