天天看點

SQL 随機抽取樣本

想要在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個樣本