- 浏览: 418109 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (267)
- 序列号 (1)
- jquery (14)
- Eclipse插件 (3)
- Flex (2)
- Rose (1)
- Myeclipse (3)
- maven (4)
- SpringSecurity (2)
- sproutcore (1)
- Http (2)
- svn (4)
- gwt (3)
- jetty (1)
- freebsd (1)
- java (29)
- Oracle (21)
- windows (1)
- Mybatis3.0 (3)
- Struts2 (6)
- easyui (1)
- JPA (1)
- UML (1)
- dom4j (1)
- design pattern (2)
- JavaScript (8)
- FreeMarker (2)
- SQLServer (1)
- memcached (3)
- urlrewrite (1)
- MonggoDB (1)
- Solr (1)
- Lucene (1)
- SQL (2)
- JODConverter (1)
- xml (2)
- pdf2swf (1)
- flexpaper (1)
- android (2)
- jsp (5)
- mobile (1)
- weblogic (3)
- Tomcat (8)
- xss (1)
- db2 (2)
- webservice (1)
- spring (2)
- Gradle (1)
- linux (4)
- ldap (1)
- 软件工程 (1)
- 开发模型 (1)
- linux系统硬件配置查看方法 (1)
- cas (3)
- mysql (1)
- HAProxy (0)
- html (1)
- Web前端 (1)
最新评论
-
super_zou:
...
世界主要国家地区下拉菜单三级联动1 -
ldl_xz:
http://www.9958.pw/post/wenku 曾 ...
利用pdf2swf将PDF转换成SWF -
superlxw1234:
请教一下楼主,你们是如何解决使用MAgent时候,一台主Mem ...
memcached集群-magent -
头子:
中间那段关于“空隙”的解决方式很赞
HTML固定表头Table -
qiankun:
比较实用,好好学习了一下
Mybatis 在dao中获取分页的总记录数
1. Oracle 随机获取10条记录
select * from (select * from table order by dbms_random.value ) where rownum <11
Oracle 随机获取10条记录:
select tt.*
from (select rownum rn, t.* from table1 t
) tt
where tt.rn in
(select trunc(dbms_random.value(1, (select count(*) from table1 )))
from dual
connect by rownum <= 10); ----这里是最多取10条
关键点:
1.dbms_random.value()是随机产生( 0,1 )之间的数。dbms_random.value(1,100)随机产生1到100之间的数。
2.trunc() 是一个格式化函数,可以格式化日期和number两种数据。
1> trunc(for dates)
具体的语法格式:TRUNC(date[,fmt]),date:一个日期格式;fmt:日期格式,该日期将由指定的元素格式所截去。缺省的时候,截取的是当前天。
trunc(sysdate) --返回今天.
trunc(sysdate,'yyyy') --返回当年第一.
trunc(sysdate,'mm') --返回当月第一天.
trunc(sysdate,'d') --返回当前星期的第一天.
trunc(sysdate,'dd')--返回当前年月日
2>trunc(for number)
TRUNC函数返回处理后的数值,其工作机制与ROUND函数极为类似,只是该函数不对指定小数前或后的部分做相应舍入选择处理,而统统截去。
直接上例子:
TRUNC(89.985,2)=89.98
TRUNC(89.985)=89
TRUNC(89.985,-1)=80
注意:第二个参数可以为负数,表示为小数点左边指定位数后面的部分截去,即均以0记。
3.connect by
1>Oracle “CONNECT BY”是层次查询子句,一般用于树状或者层次结果集的查询。
eg:select rpad(' ',(level-1)*4)||a.resrc_name from sys_menu a connect by prior menu_id=parent_id start with a.parent_id='0' --查询菜单层级关系。以0为根节点,一次展开往下的叶子节点。 level 伪列表示节点深度
2>通过CONNECT BY生成序列(上例就用了这个功能)
eg:SELECT ROWNUM FROM
DUAL CONNECT
BY
ROWNUM <= 10;
3>通过CONNECT BY用于十六进度转换为十进制
发表评论
-
解决Oracle 11g在用EXP导出时,空表不能导出
2017-02-09 16:30 406一、问题原因: 1 ... -
ORA-12519: TNS:no appropriate service handler found 解决
2016-12-30 13:20 401# processes、sessions是扩大并发连接数, ... -
ORA-01555: 快照过旧: 回退段号 (名称为 "") 过小ORA-22924: 快照太旧
2016-12-29 12:14 7570APPLIES TO:Oracle Database - En ... -
在Oracle中查询表的大小和表空间的大小
2016-12-29 11:18 550有两种含义的表大小。 ... -
Oracle定义DES加密解密及MD5加密函数示例
2016-12-16 11:22 623(1)DES加密函数 create or replac ... -
自定义字符串截取函数
2016-12-08 14:11 359CREATE OR REPLACE FUNCTION SBU ... -
通过v$sqlarea,v$sql查询最占用资源的查询
2016-03-15 15:47 451-----------------------v$sqlar ... -
Oracle的锁表与解锁
2015-12-11 13:58 1101Oracle的锁表与解锁 SELECT /*+ r ... -
oracle手动锁表
2015-12-11 12:19 827手工锁表: lock table tbl_t1 in ro ... -
oracle字符集设置
2015-03-16 14:40 538一、什么是Oracle字符集 Oracle字符集 ... -
行转列
2015-03-10 15:06 752select t.rank, t.Name from t_m ... -
ORA-01461: 仅能绑定要插入 LONG 列的 LONG 值
2015-03-09 17:21 1734--- The error occurred in ibat ... -
更改数据库管理员密码
2014-11-05 13:24 1125更改数据库管理员密码; sqlplus /nol ... -
查询Oracle正在执行和执行过的SQL语句
2013-12-16 13:51 678---正在执行的select a.username, a.si ... -
Oracle 密码过期与锁定的设置
2012-09-26 10:28 1438查询默认的profile的密码过期参数的设置 ... -
Window 下 启动Oralce服务命令
2012-09-17 09:28 2817在window 下启动Oracle服务的命令 @ ... -
Oracle job 参数说明
2012-02-17 18:04 1388Job的参数: 一:时间间隔执行(每分钟,每天 ... -
行列转换
2012-01-16 13:49 1485数据库行列转换 SQLserver 2000 行列转换 ... -
oracle 随机函数
2012-01-14 19:51 1034Oracle随机函数—dbms_random ... -
Oracle创建用户、表空间、导入导出、...命令
2011-12-05 10:44 909Oracle创建用户、表空间、导入导出、...命令 / ...
相关推荐
在 Oracle 中抽取随机数是许多应用场景中常见的问题,例如在某个活动中需要随机取出一些符合条件的用户,以颁发获奖通知或其它消息。本文将通过实例讲解如何抽取随机数的多种方法。 首先,我们可以使用 Oracle 自带...
### Oracle插入数据时获取自增ID 在Oracle数据库中,当需要实现类似其他数据库系统(如MySQL、SQL Server等)中的自动增长字段功能时,通常会采用序列(sequence)和触发器(trigger)来实现这一需求。下面将详细...
Oracle数据库中的`ROWNUM`是一个非常实用的特性,它允许我们根据行的顺序来筛选结果集。`ROWNUM`在处理大数据集时尤其有用,例如在执行随机选取数据、分页查询或者特定行选择等场景。 首先,`ROWNUM`是一个伪列,它...
5. 将临时表 tmp_1 和 tmp_2 相关联,取得符合条件的随机记录。 6. 最后,删除临时表 tmp_1、tmp_2 和序列号 tmp_id。 例如,以下是使用 DBMS_RANDOM 包生成随机数的示例代码: ```sql -- 创建序列号 tmp_id CREATE...
在SQL(Structured Query ...以上就是关于“SQL随机抽取N条记录”的详细解释,这些方法可以帮助你从数据库中获取随机样本,无论是进行数据分析还是其他目的。记住,根据你使用的具体SQL方言,可能需要调整上述代码。
这里,`sysdate`获取当前系统日期和时间,而`rownum/24/3600`则是将ROWNUM转换为小时数,再转换为天数,从而使得每个新行的时间比前一行晚约一秒,最终得到一个按秒递增的时间序列。 #### 3. **随机数生成** `...
本文将深入探讨在Oracle数据库操作中涉及的一些关键知识点,包括记录集的显示、时间的SQL转换、汉字的随机选取以及事务处理等。 1. **子程序_显示记录集信息**: 在Oracle数据库操作中,我们经常需要从查询结果中...
**问题**: 如何在Oracle中随机抽取前N条记录? **解答**: 可以使用`RAND`函数配合`RANK`函数来实现。 - **示例**: 抽取前5条记录: ```sql SELECT * FROM ( SELECT t.*, RANK() OVER (ORDER BY DBMS_RANDOM.VALUE...
9. **随机抽取记录**:要随机抽取前N条记录,可以结合`ROWNUM`和`ORDER BY DBMS_RANDOM.VALUE`实现。 10. **指定范围抽取记录**:从N行到M行的记录可通过子查询配合`ROWNUM`实现,如 `(SELECT * FROM table WHERE ...
首先,SQL语句的执行涉及多个步骤,包括解析、执行计划生成、数据获取等,其中数据获取阶段往往会产生大量的I/O操作。当数据库需要从磁盘读取或写入大量数据时,IO压力会增加,可能导致系统性能下降。 描述中提到的...
- **随机取前10条不同的记录**:通过组合使用 ROWNUM 和 SELECT DISTINCT 来实现。 - **TRUNC函数**:用于去除小数部分。 - **修改表的一些常用语法**:如 ADD、MODIFY 和 DROP 等,用于表结构的修改。 - **舍入函数...
- **管理变化**:识别并记录系统中的任何改变,这些改变可能是问题的触发因素。 - **理解**:深入理解系统的运行机制,包括硬件配置、软件版本、数据库结构等。 - **测量**:通过性能监控工具收集数据,例如使用...
在没有明确的排序情况下,Oracle会随机选择记录,导致结果不一致。正确的做法是将排序和行号分配分开处理,使用三层嵌套查询: 1. **第一层**:对数据进行排序 ```sql select * from t_stu t order by s_birthday ...
1. **启动NetManager**:在安装Oracle BIEE后,会在系统中创建一个名为`oracle-OHXXXXXXXXX`的目录(其中的数字部分为随机生成)。打开该目录中的NetManager程序。 2. **配置数据源**:按照与Oracle DB 11G中的...
3. **在 ADG 中支持 Nologging 数据的复制同步**:这为那些不需要日志记录的应用程序提供了更快的同步选项。 4. **ADG 自动重定向 Update 操作到主库**:这项特性极大地方便了读写分离的场景,可以自动将更新操作...
例如,可以先获取记录总数,然后生成一个介于0和总数之间的随机数,再用这个随机数作为记录索引来读取记录。这种方式更适合只显示单条随机记录的场景。 总结来说,使用Delphi连接SQL数据库并随机显示记录涉及数据库...
本篇文章将详细介绍在四种主流的数据库系统——SQL Server、Oracle、MySQL和Access中,如何有效地获取10条随机数据。 1. **SQL Server** 在SQL Server中,我们可以利用`TOP`子句来限制返回的行数,并结合`NEWID()`...