如果我有下表;
table name : mytable
columns : id, name, sex, age, score
row1 : 1,Albert,M,30,70
row2 : 2,Scott,M,34,60
row3 : 3,Amilie,F,29,75
...
row100 : 100,Jim,M,35,80
我想选择五次。
1st iteration : row1 ~ row20
2nd iteration : row21 ~ row40
...
5th iteration : row81 ~ row100
如何查询Hive?有任何已知的查询吗?下面返回所有100行。
SELECT * FROM mytable;
但是我真的想每次只看到20行。
可以通过中的“限制偏移量”轻松完成此操作Myqsl
。配置单元支持限制,但不设置偏移(不确定100%确定),但您可以通过以下方式限制输出
SELECT * FROM mytable
LIMIT 20;
它只会给出20条记录,但不会给出20-40条记录;
你可以ROW_NUMBER
在蜂巢中做
SELECT *,ROW_NUMBER over (Order by id) as rowid FROM mytable
where rowid > 0 and rowid <=20;
下次您必须在where子句中更改条件。
SELECT *,ROW_NUMBER over (Order by id) as rowid FROM mytable
where rowid > 20 and rowid <=40;
您也可以使用文本文件传递rowid变量或设置该变量;运行os命令并设置到蜂巢变量
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句