随机获取数据库的数据
随机获取数据库的数据
最近的在开发自己的博客,里面有个功能需要随机推荐这个功能。
不同数据库随机获取 10 条数据
转载:https://www.cnblogs.com/gc2013/p/3580796.html
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 <= 10MySQL: SELECT * FROM T_USER ORDER BY RAND() LIMIT 10Access: 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) + "*自动编号字段)"
Mysql数据库
转载:http://www.111cn.net/database/mysql/40168.htm
普通方法
本人现在使用的是Mysql数据库。
这条sql语句适用于数据库数据量小时的方式(普通方式,效率低下):
SELECT * FROM T_USER ORDER BY RAND() LIMIT 10
JOIN的方法
SELECT * FROM `table` AS t1 JOIN (SELECT ROUND(RAND() * ((SELECT MAX(id) FROM `table`) – (SELECT MIN(id) FROM `table`)) + (SELECT MIN(id) FROM `table`)) AS id) AS t2 WHERE t1.id >= t2.id ORDER BY t1.id LIMIT 10;
再把语句完善一下,加上MIN(id)的判断。
完整查询语句是:
SELECT * FROM `table`WHERE id >= (SELECT floor( RAND() * ((SELECT MAX(id) FROM `table`)-(SELECT MIN(id) FROM `table`)) + (SELECT MIN(id) FROM `table`)))ORDER BY id LIMIT 1;SELECT *FROM `table` AS t1 JOIN (SELECT ROUND(RAND() * ((SELECT MAX(id) FROM `table`)-(SELECT MIN(id) FROM `table`))+(SELECT MIN(id) FROM `table`)) AS id) AS t2WHERE t1.id >= t2.idORDER BY t1.id LIMIT 1;
转载于:https://www.cnblogs.com/-wenli/p/10485111.html
随机获取数据库的数据相关推荐
- 微信小程序云数据库触底分页加载,下拉无限加载,第一次请求数据随机,随机获取数据库的数据
效果图 小程序云开发分页加载代码 <!--pages/chatList/chatList.wxml--> <view class="pageTitle">家 ...
- mysql高效率写法_mysql高效率随机获取n条数据写法
今天做项目遇到这个问题,本来想用mysql自带的随机函数来实现,但是想到这样做功能是实现了,但是效率真的好差!一下子想不到好的方法,就去网上找了一下,记录下来,好好研究学习一下. ID连续的情况下(注 ...
- Oracle 随机获取N条数据
Oracle 随机获取N条数据 当我们获取数据时,可能会有这样的需求,即每次从表中获取数据时,是随机获取一定的记录,而不是每次都获取一样的数据,这时我们可以采取Oracle内部一些函数,来达到 ...
- php 获取数据库中的信息,php获取数据库中数据的实现方法
废话不多说,直接上代码 header("Content-type:text/html;charset=utf-8");//字符编码设置 $servername = "lo ...
- ORM框架通过映射(反射)获取数据库的数据
ORM(Object Relational Mapping)框架采用元数据来描述对象一关系映射细节,元数据一般采用XML格式,并且存放在专门的对象一映射文件中. 只要提供了持久化类与表的映射关系,OR ...
- mysql 随机槽_mysql怎样高效率随机获取n条数据
ID延续的情况下(注重不能带where,否则效果欠好): SELECT * FROM `mm_account` AS t1 JOIN (SELECT ROUND(RAND() * (SELECT MA ...
- mysql怎样高效率随机获取n条数据
ID连续的情况下(注意不能带where,否则结果不好): SELECT * FROM `mm_account` AS t1 JOIN (SELECT ROUND(RAND() * (SELECT MA ...
- cassandra随机获取数据_从数据库随机获取数据库
{"moduleinfo":{"card_count":[{"count_phone":1,"count":1}],&q ...
- mysql面向对象例子_PHP 面向对象实例:获取数据库用户数据
先写一个数据库配置文件如下: db_config.php // 数据库配置文件, db_config.php $db_server = "localhost"; $db_user ...
最新文章
- nginx服务器access_log日志分析及配置详解
- Git 代码防丢指南
- js中闭包的概念和用法
- Linux入门笔记——less
- 圣诞素材ae模板-圣诞节日聚会派对视频素材ae模板
- Fence Repair(POJ-3253)
- 「开发小技巧」07—如何使用HTML和CSS创建图像叠加图标?
- F5 APM针对Vmware view7.3 VDI业务发布测试问题分析
- java set 接口_java笔记四:Set接口
- 用差分法求解burger方程 matlab,偏微分方程数值解上机实验.doc
- Qt配置OpenCV时mingw32-make反复出错的原因
- C++实现排列组合问题
- Tea Data Analysis System 茶饮数据分析系统
- Java合并word文档的两种方式
- 迁移学习知识 - 迁移学习的四种应用场景
- OpenCV+Mediapipe手势动作捕捉与Unity引擎的结合
- pytorch c++混编报错 Error checking compiler version for cl: [WinError 2] 系统找 不到指定的文件。
- Oracle 表创建和表管理
- 谁能给个oracle邮箱,谁能给我一个电子邮箱
- 数学正态分布中的那两个字母怎么读