mysql在一个字段确定的情况下随机获取n条数据怎么实现
<select id="selectqsContent" resultType="cn.yunding.yunjuan.entity.Question">
    select `qs_id`,`qs_content` from yj_question where type_id=#{typeId}
    order by read() limit #{n};
</select>
    我这样报错了

Creating a new SqlSession
SqlSession [org.apache.ibatis.session.defaults.DefaultSqlSession@57d108c] was not registered for synchronization because synchronization is not active
Closing non transactional SqlSession [org.apache.ibatis.session.defaults.DefaultSqlSession@57d108c]

0

1个回答

0
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
mysql随机获取n条数据
做秒杀时,碰到从秒杀商品中随机取商品图的问题,可以用order by rand() limit *随机取出*条记录; 例如: select gs.original_img from ecs_goods as gs where goods_id in( select goods_id from ecs_flash_sale where 1539323575 &amp;gt;= start_time and ...
mysql怎样高效率随机获取n条数据
ID连续的情况下(注意不能带where,否则结果不好):SELECT * FROM `mm_account` AS t1 JOIN (SELECT ROUND(RAND() * (SELECT MAX(id) FROM `mm_account`)) AS id) AS t2 WHERE t1.id &amp;gt;= t2.id ORDER BY t1.id ASC LIMIT 4;ID不连续的情况下:S...
mysql 从表中随机取出几条数据
项目中可能有这样的需求,从一张表中随机取出几条数据,下面给出几种方案,几种方案之间的区别就是sql执行的效率问题 首先创建一张表   CREATE TABLE `que_bank` (   `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键id',   `gmt_create` datetime NOT NULL COMME...
mysql从数据库随机取n条数据
使用mysql的rand()方法进行分组取值,一般就是SELECT * FROM 表名 WHERE 查询语句 ORDER BY rand() LIMIT n//n为要随机取出的条数
mysql高效率随机取一条或多条数据
原文链接http://www.cnblogs.com/hfww/archive/2011/07/08/2223359.html 本文详细解说了MySQL Order By Rand()效率优化的方案,并给出了优化的思路过程,是篇不可多得的MySQL Order By Rand()效率美文。         最近由于需要大概研究了一下MYSQL的随机抽取实现方法。举个例子,要从tab
mysql 从大量数据表中高效随机取n条数据
SELECT * FROM `forumdata_userttt4` AS t1 JOIN (SELECT ROUND(RAND() * ( (SELECT MAX(id) FROM `forumdata_userttt4`)-(SELECT MIN(id) FROM `forumdata_userttt4`))+(SELECT MIN(id) FROM `forumdata_userttt4`)
从数据库表中随机获取N条记录的SQL语句
Oracle:       select * from (select * from tableName order by dbms_random.value) where rownum MS SQLServer:       select top N * from tableName order by newid() My SQL:    
mysql 取每个分类下的N条记录
SELECT a.* FROM tablename AS a WHERE (SELECT COUNT(*) FROM tablename AS b WHERE b.分类id = a.分类id AND b.id &amp;gt;= a.id) &amp;lt;= 5 ORDER BY ...
mysql随机取出N条记录
最近在做一个场次池的功能,遇到需要在大量数据中随机取出来N条记录,搜集到3种方法,亲测如下第一种:select * from `table` order by rand() limit 80这种在数据量小的时候还可以,在数据量大的时候就会感觉到很无力效率很低,故推荐下面两种第二种:SELECT * FROM `table` WHERE id &amp;gt;= ((SELECT MAX(id) FRO...
mysql 从查询结果中随机取几条数据
select id,src_id,qq_nick,nick from small_user_5.player_50 where create_time &gt; UNIX_TIMESTAMP('2010-01-18') and create_time &lt; UNIX_TIMESTAMP('2010-02-01') and guideStep=100 ORDER BY[color=red] rand()[/...
使用Django从数据库中随机取N条记录的不同方法及其性能实测
http://blog.jobbole.com/52852/
MySQL按照特定条件取分组后第一(N)条数据
通常情况下我们需要按照某个条件分组后取出最大或者最小的一(N)条数据,然而mysql默认会取出分组之前的某条数据第一次出现的位置,并不会取出最大或者最小的,例如test表中数据如下 id | name value ---|-------- 1 | a 1 2 | b 2 3 | c 2 4 | a 3 5 ...
hibernate随机从数据库中查询几条记录的思路。
我的办法有点笨,遇到大数据估计不行。 第一步:从数据库中查找所有的记录,返回集合。 第二步:通过Collections.shuffle()打乱集合顺序。 第三步:取得需要个数的子集合。
mysql随机查询若干条数据的方法
在mysql中查询5条不重复的数据,使用以下: 代码如下: SELECT * FROM `table` ORDER BY RAND() LIMIT 5   就可以了。但是真正测试一下才发现这样效率非常低。一个15万余条的库,查询5条数据,居然要8秒以上 搜索Google,网上基本上都是查询max(id) * rand()来随机获取数据。 复制代码 代码如下: SELECT * FROM `...
MYSQL随机取出20条数据
SELECT * FROM `table` WHERE id >= (SELECT floor( RAND() * ((SELECT MAX(id) FROM `table`)-(SELECT MIN(id) FROM `table`)) + (SELECT MIN(id) FROM `table`)))  dtTime > '2013-05-11' ORDER BY id LIMIT 20;
mysql实现随机获取几条数据的方法
sql语句有几种写法 1:SELECT * FROM tablename ORDER BY RAND() LIMIT 想要获取的数据条数; 2:SELECT *FROM `table` WHERE id >= (SELECT FLOOR( MAX(id) * RAND()) FROM `table` ) ORDER BY id LIMIT 想要获取的数据条数; 3:SELECT
mysql实现随机获取几条数据的方法(效率和离散型比较)
sql语句有几种写法、效率、以及离散型 比较 1:SELECT * FROM tablename ORDER BY RAND() LIMIT 想要获取的数据条数; 2:SELECT *FROM `table`WHERE id &amp;gt;= (SELECT FLOOR( MAX(id) * RAND()) FROM `table` )ORDER BY id LIMIT 想要获取的数据条数; ...
mysql查询过滤重复数据并随机取出记录
select *, count(distinct 字段) from table group by 字段  使用distinct过滤结果中的重复字段 select *, count(distinct 字段) from table group by 字段 order by rand() limit 5 过虑重复字段并随机取5条数据
[mysql] 先按某字段分组再取每组中前N条记录
From: http://blog.chinaunix.net/uid-26729093-id-4294287.html 请参考:http://bbs.csdn.net/topics/330021260 create table t2 (     id int primary key,     gid    char,     col1    int,     co
PHP随机获取Mysql数据表的一条或多条记录
PHP随机获取Mysql数据表的一条或多条记录 SELECT * FROM users WHERE userId &amp;gt;= ((SELECT MAX(userId) FROM users)-(SELECT MIN(userId) FROM users)) * RAND() + (SELECT MIN(userId) FROM users) LIMIT 1 执行该sql语句,用时0.039s,效...
使用django从数据库中随机取N条记录的不同方法及其性能实测
这里(stackoverflow)有一篇关于使用Django随机获取记录的讨论。 主要意思是说 Record.objects.order_by('?')[:2] 这样获取2个记录会导致性能问题,原因如下: “ 对于有着相当多数量记录的表来说,这种方法异常糟糕。这会导致一个 ORDER BY RAND() 的SQL查询。举个栗子,这里是MYSQL是如何处理这个查询的(其他数据库的情
如何随机获取数据库不连续ID的数据?
这个问题的来由是我朋友要为一网站实现一个标签云功能,和我交流后我给出了一个方案,在此略作记录,亦求拍砖。 大概需求这是样的: 在数据库有一张表A如下图: 其中id字段的值未必是连续的,现在我朋友要做的事情就是要从这张表获取5条数据,但这5条数据是具有随机性的,比如可能是[6,2,5,10,17] 解决方案和推理过程如下: 1、先求出这张表最小和最大的id还有数据的条数, 设
mysql查询某属性下所有值的前N条记录
例如, 姓名 科目 成绩 王 数学 100 王 语文 99 王 英语 98 王 生物 97 王 政治 96 王 物理 95
mysql利用存储过程创建随机字符串,作为实验数据
有时候,我们做做mysql实验的时候想批量创建随机的字符串,一条一条添加肯定很麻烦,所以这里利用mysql存储过程函数来实现这个功能: DROP PROCEDURE IF EXISTS add_film; DELIMITER // CREATE PROCEDURE add_film(IN num INT) BEGIN DECLARE filmid INT DE...
在 MySQL中,从10 万条主键不连续的数据里随机取 3000 条,如何做到高效?
看到知乎上有人提问 几百万记录的表,每天大概有10万条记录发生更新,从这10万条里随机取3000条做数据分析, select id from table where date_refresh = 20120329 order by rand() limit 0,3000 狂慢!!!大概三四十秒吧,怎么优化? 这个也算是mysql的一个经典问题了。 上面这种
MySql 100万级别数据中随机获取一条或多条记录之RAND()优化
处理业务中,有这样的需求,例如:有100W甚至更多的用户,此时我们要随机一条男性或者女性用户出来做数据操作。基于这个需求,我们做一下实验。 基础准备准备一张用户表,结构如下 CREATE TABLE `user` ( `uid` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT '用户ID', `name` varchar(255) DEFA
MySQL数据库中随机获取一条或多条记录
在开发过程中遇到了一个问题,使用MySQL数据库,用SQL语句在表中随机获取一条或多条数据,查了好多资料,接下来 给大家分享一下:  1.  SELECT * FROM table_name ORDER BY RAND() LIMIT 1; MySQL中的RAND()函数调用可以在0和1之间产生一个随机数。 这条SQL语句可以随机取出一条数据,而且将limit 1改为获取多条数据,得到的...
MySQL数据库随机取某个字段的值
例如有一个学生表student,表中有字段:学号:sno,姓名:name,年龄:age。 现在需要从student表中随机抽取学生的学号和对应学号的姓名,做法如下: select s.sno,s.name from student s order by rand() LIMIT 1;
【Oracle】-随机抽样N条记录
第一部分:Oracle访问数据的基本方法1、全表扫描(Full table Scan):执行全表扫描,Oracle读表中的所有记录,考查每一行是否满足WHERE条件。Oracle顺序的读分配给该表的每一个数据块,且每个数据块Oracle只读一次.这样全表扫描能够受益于多块读。2、采样表扫描(sample table scan):扫描返回表中随机采样数据,这种访问方式需要在FROM语句中包含SAMP...
mysql插入千万条随机数据
mysql千万级随机数据插入
MySQL分组然后取每个分组中按照某些字段排序的topN条数据
MySQL分组然后取每个分组中按照某些字段排序的topN条数据 建表 CREATE TABLE `t` ( `a` int(11) DEFAULT NULL, `b` int(11) DEFAULT NULL, `c` int(11) DEFAULT NULL, `itime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UP
mysql 随机20条数据
SELECT * FROM xh_read_record ORDER BY RAND() LIMIT 20   SELECT * FROM `table` WHERE id &amp;gt;= (SELECT floor( RAND() * ((SELECT MAX(id) FROM `table`)-(SELECT MIN(id) FROM `table`)) + (SELECT MIN(id) F...
从mysql数据表中随机取出一条记录
效率极差的一种办法: select * from 表名 order by rand( ) limit 1;  //此处的1就是取出数据的条数 高效写法 SELECT * FROM user  WHERE userId >= ((SELECT MAX(userId) FROM user )-(SELECT MIN(userId) FROM user )) * RAND() + (S
MySQL 根据某个字段排序后,获取一条或者某几条数据
数据库格式: 需求:根据area分组并统计分组后的总数,根据统计出来的总数降序排序,获取前10条数据。 &lt;select id="selectByAreaDevNumList" resultMap="BaseResultMap" parameterType="java.util.List" &gt; select area ,COUNT(*) from c...
mysql 查询某类型下最新的n条数据
需求:根据文章的类型Id来获取其类型下最新的5条数据 select * from article where classify_id='fds4f564s' order by create_time desc limit 5;  
MySQL随机获取数据的方法,支持大数据量
最近做项目,需要做一个从mysql数据库中随机取几条数据出来。 总所周知,order by rand 会死人的。。因为本人对大数据量方面的只是了解的很少,无解,去找百度老师。。搜索结果千篇一律。特发到这里来,供大家学习。 在mysql中带了随机取数据的函数,在mysql中我们会有rand()函数,很多朋友都会直接使用,如果几百条数据肯定没事,如果几万或百万时你会发现,直接使用是错误的。下面
从list中取N个随机生成一个集合
原文地址:http://www.cnblogs.com/nunuAction/p/6020732.html 工作中发现有很多有序算法,较少见到一些可用的无序随机算法。无序随机算法的目的是让客户感觉每次都不一样,因为一直看一样的会审美疲劳哈。 在jdk自带一种CollectionUtils.shuffle list> 使用默认随机源对指定列表进行置换,方便快捷。熟读JDK是如此的重要
MySql中取出每个分类中的前N条记录
SELECT a.* FROM ent_news as a WHERE (SELECT COUNT(*) FROM ent_news as b WHERE b.catid=a.catid AND b.id&amp;gt;=a.id) &amp;lt;=6 AND a.status=1 And a.is_position=1
SQL分组获取随机记录
主要是利用row_number() over()函数以及DBMS_RANDOM.value产生的随机数大小排序进行,再对固定的排序序号进行统一取值, select id, empno , row_number() over(partition by empno order by DBMS_RANDOM.value) as row_num from emp t;
mysql(3) : 数据库随机选取多条数据
SELECT * FROM tp_news WHERE id &gt;= ( (SELECT MAX(id) FROM tp_news) - (SELECT MIN(id) FROM tp_news) ) * RAND() + (SELECT MIN(id) FROM tp_news) LIMIT 11
文章热词 机器学习教程 Objective-C培训 交互设计视频教程 颜色模型 设计制作学习
相关热词 mysql关联查询两次本表 native底部 react extjs glyph 图标 java实现班级随机点名 大数据情况下如何机器学习