早教吧 育儿知识 作业答案 考试题库 百科 知识分享

我需要在oracle中写一个循环,获取newbosid('8E088616')的两个随机数,插入到FNewID1selectnewbosid('8E088616')intoFNewID1fromdual;updateTIMPurInWarehsEntrysetfparentid=FNewID(参数),fid=FNewID1(参数)wherefparen

题目详情
我需要在oracle中写一个循环,获取newbosid('8E088616') 的两个随机数,插入到 FNewID1
select newbosid('8E088616') into FNewID1 from dual;
update T_IM_PurInWarehsEntry set fparentid= FNewID(参数),fid=FNewID1(参数) where fparentid=foldid(参数);
▼优质解答
答案和解析
Oracle随机函数可以用以下方式获取;
select dbms_random.random from dual;

你的语句可以直接修改成:
  select newbosid(foldid),newbosid(foldid)
  into FNewID,FNewID1
  from dual;

  update T_IM_PurInWarehsEntry
   set fparentid= FNewID(参数),fid=FNewID1(参数)
   where fparentid=foldid(参数);

如果你是在某个存储过程中,则可以简化成:
  update T_IM_PurInWarehsEntry
   set fparentid= newbosid(foldid),fid=newbosid(foldid) /* newbosid为随机函数 */
   where fparentid=foldid; /* foldid 为输入参数*/