方法一:
需求是要在首页随机的取出n条数据来推荐给用户,一开始想随机id,根据最大id和最小id来随机的,想想还是算了。
后面发现了还能order by rand(),顺利的解决了这个需求
select * from table where 1 order by rand() limit 10
方法二:
想要在SQL随机抽取样本数,
主要思想:就是随机产生一列随机数,并对随机数进行排序,再进行抽取前1000行
下面举例:
# 随机从总样本中抽取1000个样本,保存在table_name表中
create table table_name as # 创建一个表table_name
select b.* from(
select rand() as index_name, a.* from table_name_a as a #对表table_name_a赋值一个随机数) as b #将新表赋值为表b
order by b.index_name desc #对表b的随机数index_name进行排序
limit 1000 #对排序的取前1000
LIMIT简单介绍:
select * from table_name
limit 100,10 #提取从第101行数据样本,总共抽取10个样本
生活不止眼前的苟且,还有诗与远方的田野!
我会定期更新我的微博,来一起自学python!
--------如有问题欢迎指正~------------