求一SQL,关于数据混淆.例如我有一个表SP_DOC(商品档案)下有如下字段,
编号 id(PK) 名称 name 价格 price
A001 书包 5
A002 本 1
.
.
.
.
A3000 笔 2大概有3w条数据,我想让, id='A001'的数据名称为3w条数据中的任意商品名称.可以利用oracle随机函数DBMS_RANDOM.RANDOM也可.
编号 id(PK) 名称 name 价格 price
A001 书包 5
A002 本 1
.
.
.
.
A3000 笔 2大概有3w条数据,我想让, id='A001'的数据名称为3w条数据中的任意商品名称.可以利用oracle随机函数DBMS_RANDOM.RANDOM也可.
(
select name from (select rownum rid,name from sp_doc) where rid=
(
select abs(trunc(dbms_random.VALUE(1,(select count(*)+1 from sp_doc)),0)) from dual
)) b where a.id='A001'
如果我要全表更新呢? 只能写游标循环处理是不
(
select name from (select rownum rid,name from sp_doc) where rid=
(
select abs(trunc(dbms_random.VALUE(1,(select count(*)+1 from sp_doc)),0)) from dual
)) b where a.id=t.id);
按3楼的基础上改的,试试