2016-10-26 35 views
2

我想從具有確定數字的原始行中的mytable中選擇行。我們知道,關鍵詞'limit'將隨機選擇行。 mytable中的行按順序排列。我只想按他們的原始順序選擇它們。例如,要選擇從第1行到第10000行的10000行。 如何實現此目的? 謝謝。如何在Hive中按原始順序選擇行?

回答

0

嘗試:在你的餐桌

SET mapred.reduce.tasks = 1 
SELECT * FROM ( 
    SELECT *, ROW_NUMBER() OVER() AS row_num 
    FROM table) table1 
SORT BY row_num LIMIT 10000 
0

行可能是爲了,但...並行讀取 表,結果從不同的映射器或減速在原來的順序返回不行。這就是爲什麼你應該知道定義「原始順序」的規則。 如果你知道,那麼你可以使用row_number()order by。例如:

select * from table order by ... limit 10000;

相關問題