当前位置:首页 » 数据仓库 » 数据库随机抽取20条语句
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

数据库随机抽取20条语句

发布时间: 2022-07-13 19:56:46

❶ hql怎么从数据库中随机抽取几条记录

题主可以参考运行下列mysql数据库 Sql语句(随机抽取5条记录):

select * from tblName order by rand() limit 5;

❷ SQL、MySQL、Oracle随机查询语句

关于SQL Server SQL语句查询分页数据的解决方案:要求选取 tbllendlist 中 第3000页的记录,每一页100条记录。-----------------------------------方法1:----------select top 100 * from tbllendlistwhere fldserialNo not in(select top 300100 fldserialNo from tbllendlistorder by fldserialNo)order by fldserialNo----------方法2:----------SELECT TOP 100 *FROM tbllendlistWHERE (fldserialNo >(SELECT MAX(fldserialNo)FROM (SELECT TOP 300100 fldserialNoFROM tbllendlistORDER BY fldserialNo) AS T))ORDER BY fldserialNo方法1执行速度比较快!不过,这种做法还是很麻烦,强烈期待微软发明新的可分页的SQL语句来!!!!SQL Server ---------------------------------------------------------------------------------从数据库表中的第M条记录开始取N条记录,利用Top关键字:注意如果Select语句中既有top,又有order by,则是从排序好的结果集中选择:SELECT *FROM ( SELECT Top N *FROM (SELECT Top (M + N - 1) * FROM 表名称 Order by 主键 desc) t1 ) t2Order by 主键 asc例如从表Sys_option(主键为sys_id)中从10条记录还是检索20条记录,语句如下:SELECT *FROM ( SELECT TOP 20 *FROM (SELECT TOP 29 * FROM Sys_option order by sys_id desc) t1) t2Order by sys_id ascOralce数据库--------------------------------------------------------------------------------从数据库表中第M条记录开始检索N条记录SELECT *FROM (SELECT ROWNUM r,t1.* From 表名称 t1 where rownum < M + N) t2where t2.r >= M例如从表Sys_option(主键为sys_id)中从10条记录还是检索20条记录,语句如下:SELECT *FROM (SELECT ROWNUM R,t1.* From Sys_option where rownum < 30 ) t2Where t2.R >= 10如果你对Oracle数据库分页不是很熟悉的话,本页后面有专门对Oracle分页技术的讲解。My sql数据库---------------------------------------------------------------------------------------------My sql数据库最简单,是利用mysql的LIMIT函数,LIMIT [offset,] rows从数据库表中M条记录开始检索N条记录的语句为:SELECT * FROM 表名称 LIMIT M,N例如从表Sys_option(主键为sys_id)中从10条记录还是检索20条记录,语句如下:select * from sys_option limit 10,20TAG: racle RACLE Server server SERVER sql SQL

❸ sql 一个表里已经 有20行数据 ,然后要从另一个表里随机抽取20条 覆盖掉之前的数据

如果表结构一样。

首先嘛

DELETE FROM 那个只有20行数据的表

然后随机插入

由于 TOP - N 的处理, 与 随机抽取 , 各个数据库处理的 方式各不相同, 下面是不同数据库的处理办法:

Oracle:

INSERT INTO 空白表
SELECT *
FROM
(
SELECT * FROM 有数据的表 ORDER BY dbms_random.value
) subQuery
where rownum <= 20;

DB2:

INSERT INTO 空白表
SELECT *
FROM 有数据的表

ORDER BY rand()
fetch first 20 rows only;

SQL Server:

INSERT INTO 空白表
SELECT TOP 20 *
FROM 有数据的表
ORDER BY
newid();

MySQL :

INSERT INTO 空白表

select *
FROM 有数据的表
ORDER BY rand() LIMIT 0, 20;

SQLite :

INSERT INTO 空白表
select *
FROM 有数据的表
ORDER BY RANDOM() LIMIT 0, 20;

❹ 如何从mysql数据库中随机获取任意条数据

随机读取可用newid(),取一条可用top 1
举例:如在表test中随机抽取一条未被读取的数据,执行语句为:
select?top?1?*?from?test?order?by?newid()第一次执行结果:
第二次执行结果:
结论:两次执行结果有可能一样,也有可能不一样,也就是实现了随机的效果。

❺ 如何从sql数据库里随机取20条记录

Select Top 5 * From 表名 Order By NEWID() , newid 产生的新的值是不固定的 。 在Select表里的数据的NEWID() 函数时候 随即选出N条记录 。希望能够帮助你 。

❻ 随机数的问题(.net)我在做一个随机出题的模块!数据库里有20道题,我要随机出来6 个,Sql 语句应该怎么

你用的什么数据库,不同的数据库查询语句是不一样的
SQL Server:
Select TOP 6 * From TABLE Order By NewID();
Access:
Select TOP 6 * From TABLE Order By Rnd(ID) ; //其中ID为表的主键,也可以是其他排序字段
MySql:
Select * From TABLE Order By Rand() Limit 6

❼ hibernate随机取得数据库中的20条数据,数据库用oracle,怎样做效率最高

做一个考试系统,需要要随机抽题目组卷!把我的思路简单说一下
1. 使用Hibernate,要有高的效率, 好的OO设计非常重要,这影响到缓存的设计。

2.组卷是先把所有题目加载到缓存中,我采用的方式放在Collection对象中。

3.每次组卷前,对Collection里面的对象进行随机排序。随机算法类似洗牌算法,可以见:http://apps.hi..com/share/detail/6221904 第2种算法说明。

4.随机排序Collection里面的题目后,开始顺序取出Collection的题目。全部都是再缓存进行,只需要查询一次数据库。

5.如果题目很多,无法全部加载到缓存中,那么加载题目的ID。

项目是前年做的,组卷的时候在7000道题随机组卷,每份试卷75道题左右。100份试卷好像几秒组完。还可以接受。

❽ C# 随机从数据库抽取数据。

1:
数据库查随即抽取10条QuestionId
放到数组arrayQuestion中
arrayQuestion[0-9]="select
top
10
QuestionId
,NewID()
as
random
from
Question
order
by
random"
2:页面加载时显示第一条(定义变量int
n=0;)
第一条数据="select
QuestionTopic
from
Question
where
QuestionId=arrayQuestion[n]"
3:button_onclick事件,点击显示下一条数据
n++;
下一条数据="select
QuestionTopic
from
Question
where
QuestionId=arrayQuestion[n]"
我想我讲的已经够详细了。。。。~~

❾ sql 随机抽取几条数据的方法 推荐

四种数据库随机获取10条数据的方法
SQL Server:

SELECT TOP 10 * FROM T_USER ORDER BY NEWID()

ORACLE:

SELECT * FROM (SELECT * FROM T_USER ORDER BY DBMS_RANDOM.RANDOM()) WHERE RONUM <= 10

MySQL:

SELECT * FROM T_USER ORDER BY RAND() LIMIT 10

Access:

SELECT TOP 10 * FROM T_USER ORDER BY rnd([一个自动编号字段])

这条语句在 Access 中的“查询”中是可以运行并得到随机结果的,但在 ASP.NET等后台程序代码中却无法得到预期的随机效果。
正确的写法如下:
以ASP.NET为例:

Random random = new Random(System.Guid.NewGuid().GetHashCode());

int r = random.Next();
string sql = "SELECT TOP 10 * FROM T_USER ORDER BY RND(" + (-r) + "*自动编号字段)"