- 浏览: 667713 次
- 性别:
- 来自: 深圳
-
文章分类
- 全部博客 (609)
- java (139)
- 数据库 (107)
- 微信 (23)
- IT生活 (5)
- web前端 (74)
- SSH (11)
- 设计模式 (12)
- 重要资料 (11)
- 其他 (15)
- java技巧 (23)
- 服务器 (9)
- 2D/GUI (3)
- JAVA3D (2)
- ANT (5)
- Apache项目 (19)
- 数据类型 (10)
- 报表 (3)
- Collections (6)
- SQL/JDBC (15)
- 开发类 (6)
- EJB (6)
- Email (6)
- 文件读写 (2)
- 游戏 (0)
- Flex (2)
- Generic (2)
- HIbernate (12)
- I18N (5)
- Java EE (9)
- java ME (4)
- JDK 6 (8)
- JNDI/LDAP (5)
- JSP (7)
- JSTL (2)
- 正则表达式 (2)
- 安全 (2)
- Struts2 (12)
- Spring (4)
- Web服务 (10)
- Xml (1)
- JavaScript (30)
- AJAX (7)
- 验证 (4)
- 上传下载 (1)
- office办公软件 (1)
- Android (2)
- IOS (0)
- Dubbo (3)
- memcached/redis (1)
- 小程序 (1)
- 微信公众号 (0)
最新评论
-
wf_wangfeng:
怎么我用第一种方法不行呢 alert(document.rea ...
当jsp页面完全加载完成后执行一个js函数 -
Lori_Liu:
有帮助,至少可以解决了目前所遇到的问题!谢谢..
当jsp页面完全加载完成后执行一个js函数 -
starbhhc:
String actionMessage = new Stri ...
Java读取txt文件乱码 -
starbhhc:
Sev7en_jun 写道GOOD
客气,互相交流。。
javaeye论坛规则小测验(答案)--star -
Sev7en_jun:
GOOD
javaeye论坛规则小测验(答案)--star
利用一条SQL语句从数据库Table表中随机获取N条记录,各数据库的SQL语句略有不同,如下: 1、MySql 1 Select* FromTABLEOrderByRand() Limit N 以上代码效率不高,自己对1000条数据表随机取10条的测试结果为耗时0.125s,有网友推荐改为以下代码效率有大幅提高,耗时为0.005s,不过结果是随机从某个位置开始取N条记录,而不是随机取N条记录,略有差异。详细说明见mysql使用rand随机查询记录效率测试。 2 SELECT* FROM`TABLE` a join(SELECTROUND(RAND() * ((SELECTMAX(id) FROM`TABLE`)-(SELECTMIN(id) FROM`TABLE`))+(SELECTMIN (id) FROM`TABLE`)) ASid) ASb WHEREa.id >= b.id ORDERBYa.id LIMIT N; 2、SQL Server 1 SelectTOPN * FromTABLEOrderByNewID() 3、Access 1 SelectTOPN * FromTABLEOrderByRnd(ID) Rnd(ID) 其中的ID是自动编号字段,可以利用其他任何数值来完成,比如用姓名字段(UserName) 2 SelectTOPN * FromTABLEOrderBYRnd(Len(UserName)) 4、Oracle 1)dbms_random包 1 select* from(select* fromTableorderbydbms_random.value) whererownum < N; 注:dbms_random包需要手工安装,位于$ORACLE_HOME/rdbms/admin/dbmsrand.sql 2 dbms_random.value(100,200) 可以产生100到200范围的随机数 2)按概率抽取: 1 select* fromTablesample(百分比); 3)sys_guid 1 select* from(select* fromTableorderby sys_guid()) whererownum<N; 5、postgreSQL 1 select* fromTableorderbyrandom() limit N
NewID()函数将创建一个 uniqueidentifier 类型的唯一值。
sql里面:
比如读取10条随机记录
select top 10 * from tablename order by newid();
Oracle里面:
1.dbms_random包
select * from (select * from tablename order by dbms_random.value) where rownum < N;
例:
select * from (select * from tablename order by dbms_random.value) where rownum < 3;
注:dbms_random包需要手工安装,位于$ORACLE_HOME/rdbms/admin/dbmsrand.sql
dbms_random.value(100,200)可以产生100到200范围的随机数
2.按概率抽取:
select * from tablename sample(百分比);
例:
select * from tablename sample(10);
3.sys_guid
select * from (select * from tablename orderby sys_guid()) where rownum<10;
发表评论
-
mysql创建用户并授权
2016-09-04 23:42 6261.新建用户。 //登录MYSQL mysql -u ... -
java实现文件转换成二进制存储与取出
2016-08-06 01:21 2796一、功能描述: 将文件转成二进制数据放入数据库中,需要的 ... -
Mongodb的全面总结
2016-07-14 16:35 1413MongoDB的官方文档基本是how to do的介绍,而关 ... -
Navicat连接Oracle数据库时报错ORA-28547
2016-07-12 15:46 717用Navicat连接Oracle数据库时出现如下错误提示: ... -
4.ubuntu14.04 安装mongodb笔记
2016-05-06 08:52 6831、使用系统自动获取安装。 1)获取更新 s ... -
3.mongdb mongdb的shell命令
2016-04-14 11:10 1029在mongdb的安装目录,运行mongo.exe,运 ... -
2.mongdb mongdb客户端使用
2016-04-14 10:26 803robomongo,命令行方便 ... -
1. WIN7下安装运行mongodb
2016-04-14 10:11 5531)、下载MongoDBhttp://downloads. ... -
mysql 与mongodb的特点与优劣
2016-04-13 17:37 1005介绍: MongoDB是 ... -
报错:1130-host ... is not allowed to connect to this MySql server 开放mysql远程连接 不使用l
2015-07-06 13:16 836报错:1130-host ... is not allow ... -
sql查询今天、昨天、本周、本月、日期的
2015-05-15 10:55 1800sql 求解两个时间差 SELECTDATEDIFF ... -
druid demo
2015-04-08 15:13 1640java程序很大一部分要操作数据库,为了提高性能操作数据库的 ... -
Druid数据库连接池使用
2015-04-08 15:03 747阿里巴巴推出的国产数据库连接池,据网上测试对比,比目前的D ... -
Hibernate与 MyBatis的比较
2015-03-20 00:34 650mybatis是半自动的,hibernate是全自动的,就是 ... -
经典SQL语句大全
2015-01-16 01:02 577一、基础 1、说明:创建数据库CREATE DATABAS ... -
MyBatis的几种批量操作
2015-01-11 22:59 1707MyBatis中批量插入 方法一: &l ... -
spring与mybatis三种整合方法
2015-01-11 22:58 501本文主要介绍Spring与Mybatis三种常用整合方法, ... -
MyBatis(六)、MyBatis主配置文件
2015-01-11 22:58 707在定义sqlSessionFactory时需要指定MyBa ... -
MyBatis(五)、动态SQL语句
2015-01-09 01:01 768有些时候,sql语句where条件中,需要一些安全判断,例 ... -
MyBatis(四)、SQL语句映射文件(2)增删改查、参数、缓存
2015-01-09 01:00 5372.2 select 一个select 元素非常简单。例如 ...
相关推荐
在TADOQuery的SQL属性中编写SQL查询语句,以获取所需的记录。 3. **随机显示记录**:要随机显示数据库中的记录,我们可以利用SQL的内置函数,如RAND(),配合ORDER BY子句来实现。例如,如果我们有一个名为`...
9. **前n条记录**: 获取表的前10条记录: ```sql SELECT TOP 10 * FROM table1 WHERE 范围 ``` 10. **排除重复行**: 若要获取仅存在于`tableA`但不在`tableB`和`tableC`中的行: ```sql (SELECT a FROM ...
4. 构建SQL查询语句,目的是选择前10条记录,但不是按常规的升序或降序排列,而是通过在`ORDER BY`子句中添加一个随机表达式`Rnd(-1 * intRandomNumber * id)`来实现随机排序。这里的`id`是表中的主键字段,乘以`-1`...
### 通用的SQL语句总结 #### SQL 数据类型与区别 **浮点数与小数类型:** - **FLOAT**: 表示浮点数的一种类型,适用于存储近似数值的数据,例如科学计算或统计分析中可能使用的数值。 - **DOUBLE**: 也是一种...
这条语句将从表中随机读取10条记录。 八、日程安排提前五分钟提醒 日程安排提前五分钟提醒是指从日程安排表中读取五分钟之前的记录。使用DATEDIFF函数可以实现日程安排提前五分钟提醒的操作。例如: SELECT * ...
获取表中前10条记录可以使用以下SQL语句: ```sql SELECT top 10 * FROM table1 WHERE 范围; ``` #### 十、排除重复行并比较多个表 为了得到所有在`TableA`中但不在`TableB`和`TableC`中的行,并且消除所有重复行...
### 如何从数据库中随机取出10条记录的方法 在处理大量数据时,有时我们需要从数据库中随机抽取一部分记录来进行数据分析、测试或者展示等操作。本文将详细介绍如何从数据库中随机取出10条记录的方法,并提供多种...
### SQL随机数读取——利用RAND()函数 在SQL中,有时我们需要生成随机数来用于各种应用场景,比如数据测试、统计分析或是某些特定业务逻辑的需求等。本文将详细介绍如何在SQL中利用`RAND()`函数结合其他函数来生成...
在本文中,我们将深入探讨如何使用Ajax从数据库中随机读取5条数据并在网页上动态刷新。Ajax(Asynchronous JavaScript and XML)是一种在不重新加载整个网页的情况下更新部分网页的技术,它通过JavaScript与服务器...
因此,查询优化的重点在于减少数据库服务器从磁盘读取数据的次数,并优先进行顺序读取而非随机读取。 目前市场上主流的数据库产品有IBM DB2、Microsoft SQL Server 2000、Oracle 9i、Sybase等,以及免费数据库的...
算法的具体实现思路包括对现有数据库SQL语言中的伪随机函数进行改造,以满足从数据库中随机读取记录集合的需求。由于在SQL语句中,调用一次伪随机函数只能得到一个随机数,因此需要对伪随机函数进行相应的扩展,使其...
#### 三、随机读取记录 在不同的数据库系统中,读取随机记录的方法也有所不同: - **Access**:`SELECT TOP 10 * From 表名 ORDER BY Rnd(id);` - **SQL Server**:`SELECT TOP n * FROM 表名 ORDER BY NEWID();` ...
另一种不重复读取的方法是只生成一个随机数,然后依次读取该随机数之后的N条记录。这需要确保随机数小于总记录数减去要读取的记录数量。以下是改进后的代码: ```vba Dim n As Integer, ranNum As Integer n = 10 ...
2. 分析器:连接成功后,分析器会对用户提交的SQL语句进行词法和语法分析,确保SQL语句符合语法规则。 3. 优化器:优化器决定具体的执行计划,比如确定使用哪个索引,以及如何高效地执行查询和更新操作。 4. 执行...
9. **获取前n条记录**:使用`TOP`子句可以快速获取表的前n条记录,例如: ```sql SELECT TOP 10 * FROM table1 WHERE 范围; ``` 10. **集合操作**:使用`EXCEPT`操作符可以找出存在于一个表但不在其他表中的行:...
6. **使用LIMIT 1获取单行数据**:当只需要一条记录时,加上LIMIT 1可以避免扫描整个结果集,提高查询效率。 7. **避免ORDER BY RAND()**:这种操作可能导致全表扫描,对于大数据量,应尽量避免,可以考虑先随机...
例如,以下 SQL 语句本意是随机获取前 10 条记录: ```sql SELECT TOP 10 Title, objectGuid FROM Document ORDER BY Rnd(id) ``` 然而,由于 ADO 的缓存机制,这种方式并不能确保每次查询都能获得随机结果。 ###...
3. 读取适当的记录 LIMIT M,N,而不要读多余的记录 `SELECT id,name FROM t LIMIT 866613, 20` 使用 LIMIT 分页查询可能会越来越慢,随着表数据量的增加。对于这种情况,应该先取出主键 id,然后通过主键 id 跟原...
代码示例中展示了一个简化的查询语句,其中使用了`mt_rand`函数来生成随机偏移量,并通过SQL查询从表中取出一条记录。实际上,为了确保取出的20条记录是随机且不重复的,需要在随机偏移量生成后对之前抽取的记录进行...