想要在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个样本