Hive实现从表中随机抽样得到一个不重复的数据样本
2017-05-03 11:45
435 查看
方法一:
select * from table_a order by rand() limit 100;
方法二:
select * from (
select e.*, cast(rand() * 100000 as int) as vidx from e
) vt order by vt.vidx limit 1000
说明:
1,表e为一个普通的表,里面存有数据,我们要从表e中随机抽出1000条数据作为数据样本。
2,rand() 函数产生一个0到1的随机数字,cast(rand() * 100000 as int) as vidx 表示: vidx为一个0到100000之间的一个随机整数。
3,e表中的字段和vidx组成了一个新的表格vt 。
# 用这句话来验证结果,最好在hive端,表及时能看到 select * from kkwifi2000 order by rand() limit 20;
select * from table_a order by rand() limit 100;
方法二:
select * from (
select e.*, cast(rand() * 100000 as int) as vidx from e
) vt order by vt.vidx limit 1000
说明:
1,表e为一个普通的表,里面存有数据,我们要从表e中随机抽出1000条数据作为数据样本。
2,rand() 函数产生一个0到1的随机数字,cast(rand() * 100000 as int) as vidx 表示: vidx为一个0到100000之间的一个随机整数。
3,e表中的字段和vidx组成了一个新的表格vt 。
# 用这句话来验证结果,最好在hive端,表及时能看到 select * from kkwifi2000 order by rand() limit 20;
相关文章推荐
- Hive实现从表中随机抽样得到一个不重复的数据样本
- Hive实现从表中随机抽样得到一个不重复的数据样本
- Hive实现从表中随机抽样得到一个不重复的数据样本
- 实现给定一个数据库连接得到数据库下所有的数据表
- 用HashSet()实现重新建立一个没有重复数据的数组
- 编写一个JS函数,实现清除数据中重复的元素
- 【安卓-自定义布局】安卓App开发思路 一步一个脚印(十四)实现Fragment的缓冲视图和数据,防止重复加载
- 用string实现的一个完整的类,包含以下操作:重载运算符 > >,< < ,string模板类,fstream对二进制数据读写
- 一个过滤重复数据的 SQL 语句
- 我写的:用游标实现:查找重复数据并将重复数据加自动增长数字
- 使用Not Exists实现返回条件为一个值或空值的数据
- 使用事务与锁,实现一个用户取过的数据不被其他用户取到
- 如何删除一个表中某列是重复的数据?
- 写一个在程序中创建dts包,实现数据用dts导入到sql的类。
- Sql 语句实现在同一个DB中复制表和空清一个DataTable中的所有数据
- 实现一个压缩Remoting传输数据的Sink:CompressionSink
- 实现datagrid的foot中增加一个新增数据行,以解决datagrid不能新增数据的问题
- [导入]一个离线ADO数据管理模块的实现
- 使用事务与锁,实现一个用户取过的数据不被其他用户取到
- 一个显示地图数据,并实现简单浏览查询程序源码(SDK编写)