数据库有哪些 如何利用SQL随机查询出指定数量的数据?
如何利用SQL随机查询出指定数量的数据?
虽说都是使用 SQL, 但是不同的数据库完成这个操作的写法是不同的, 以50条为例.
MySQL
Select * from [表名] where [条件] order by rand() limit 50
SQL Server
Select top 50 * from [表名] group by [Id] order by NEWID()
mysql随机查询若干条数据的方法?
1.随机读取连续多条记录。经过实践,可以随机读取多条连续的数据记录,里头取值的一般都是主键ID来进行最大值、最小值的读取:
SELECT * FROM example_table AS t1 JOIN (SELECT ROUND(RAND() * ((SELECT MAX(id) FROM example_table)-(SELECT MIN(id) FROM example_table)) (SELECT MIN(id) FROM example_table)) AS id) AS t2 WHERE t1.id >= t2.id ORDER BY t1.id LIMIT 5
2.随机多条数据。以下两种都是随机读取数据,查询数据速度、随机范围都基本相差不大
SELECT * FROM example_table WHERE id >= ((SELECT MAX(id) FROM example_table)-(SELECT MIN(id) FROM example_table)) * RAND() (SELECT MIN(id) FROM example_table) LIMIT 5
SELECT * FROM example_table WHERE id>=(SELECT floor(RAND() * ((SELECT MAX(id) FROM example_table)-(SELECT MIN(id) FROM example_table)) (SELECT MIN(id) FROM example_table))) ORDER BY id LIMIT 5
java程序中怎样从数据库的一张表中随机提取几条数据?
1. 用select count(*)得到总记录条数t
2. 用分页查找,用随机数Random得到一个0<x<t的x数,然后分页的分页数和分页量都用x
3.该分页查找得到的就是一个随机的记录。
4.循环1-3步骤,直到得到希望数量的随机记录。
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。