已有TableA如下,
--------------------
id   name    age
1    Tom     20
2    Smith   25
3    Andrew  30想得到一个TableB如下,
--------------------
id  name    age  newField
1   Tom     20   19CD3239367E3F5164E9B704E59AE276
2   Smith   25   3AAB704E59AE277E3F5CD3239360E2BC
3   Andrew  30   9A4DCB704E11E57E5CD3239364E1663FTableB比TableA多了一个字段newField,类型为varchar2,内容为随机数,UUID或者随机数字。

解决方案 »

  1.   

    create table tableb as select tablea.*,sys_guid() newField from tablea;
      

  2.   


    使用你的方法得到TableB如下:
    -----------------
    想得到一个TableB如下,
    --------------------
    id   name     age   newField
    1    Tom       20    CD246E040007F52138A101077FC00AB5
    2    Smith     25    CD246E040007F52138A101077FC00AB5
    3    Andrew  30    CD246E040007F52138A101077FC00AB5生成后的newField字段的值都是相同的,我想让它们是随机生成的不同数,该怎么搞?
      

  3.   

    坑爹啊,你是linux系统?这个呢?
    create table tableb as select tablea.*,dbms_random.string('u',32) newField from tablea;
      

  4.   

    系统是CentOS 64位,用这句可以生成随机32位字符串。