Oracle如何实现从特定组合中随机读取值
来源:互联网 发布:天刀捏脸数据导入 编辑:程序博客网 时间:2024/06/07 13:07
在这里,我们会用到DBMS_RANDOM包和CASE WHEN语句,思路如下:
一、利用DBMS_RANDOM.RANDOM函数随机生成数值,然后对数值进行取模,如果我们要在10个元素中随机读取的话,那我们需要对10进行取模。
二、再将取模后的值利用CASE WHEN语句与元素进行关联。
譬如,我有一个组合,里面包含“北京”,“上海”,“广州”,“深圳”,“武汉”五个元素,想从这五个元素中随机读取值来填充表的某个字段。
首先,创建测试表
SQL> create table test(loc varchar2(2 char));Table created.
构造能随机读取元素的SQL语句
select case mod(abs(dbms_random.random),5) when 1 then '北京' when 2 then '上海' when 3 then '广州' when 4 then '深圳' else '武汉' end "LOC"from dual;
大批量填充test表的loc字段
begin for i in 1..10 loop insert into test values(case mod(abs(dbms_random.random),5) when 1 then '北京' when 2 then '上海' when 3 then '广州' when 4 then '深圳' else '武汉' end ); end loop; end;
最后生成的结果如下:
SQL> select * from test;LOC--------武汉广州上海北京上海武汉北京上海武汉深圳10 rows selected.
0 0
- Oracle如何实现从特定组合中随机读取值
- Oracle如何实现从特定组合中随机读取值
- 数据库中定义触发器实现:从多张表随机抽取数据组合成一张新表
- 从SqlServer中随机读取记录
- Oracle中如何生成随机数字、随机字符串、随机日期
- 如何随机读取数据库中记录
- Java 从一个文件中读取某一个特定的字符串
- php从数据库中读取特定的行
- 如何从一个文件特定段落中(文本文件),读取相关的文件信息,并进行分段梳理
- php 从指定数字中获取随机组合的方法
- xml中如何读取一个子节点有特定值的节点
- C#中如何产生字母和数字的随机组合
- C#中如何产生字母和数字的随机组合
- 从mysql中随机读取多条记录
- 如何从jar包中检索特定规则的代码
- 正则表达式-如何从一个字符串中拿到特定内容
- Oracle 中实现随机抽取数据
- Oracle 中实现随机抽取数据
- RAC碎碎念
- Oracle之DBMS_RANDOM包详解
- 如何用分析函数找出EMP表中每个部门工资最高的员工
- 大华2016android开发招聘网上笔试题
- 根据访问设备自动跳转到M站
- Oracle如何实现从特定组合中随机读取值
- jboss精华总结
- 《Administrator's Guide》之Managing Memory
- 如何查找特定目录下最大的文件及文件夹
- Git使用:版本回退
- 如何用Dummy实例执行数据库的还原和恢复
- 数据结构与算法Javascript描述(一)栈
- 树莓派的系统安装及分辨率设置
- 文章标题