2015-08-03 62 views
2

我正試圖解決在配置單元查詢執行後創建的一個問題。配置單元 - 如何從結果集中刪除列標題

一個名爲'stock_data'的新表,它持有股票價格,股票代碼和所有其他細節。

我有一個tsv文件(製表符分隔文件),並使用'load data local inpath'命令加載數據庫表。

TSV文件中有列標題,如 'stock_name', 'STOCK_SYMBOL' ....

現在,當我想顯示的股票代碼,並使用下面的查詢數數有: -

select stock_symbol,count(*) from stocks group by stock_symbol; 

輸出加載列標題

XOM 500 
XRX 500 
XTO 496 
YPF 500 
YUM 500 
YZC 478 
ZAP 494 
ZF 494 
stock_symbol 1 

Time taken: 20.576 seconds, Fetched: 1735 row(s) 

我的問題是: -

如何從我的結果集中隱藏或刪除'stock_symbol 1'(最後一行)?

我試圖運行之前,按照以下命令來使用: -

set hive.cli.print.header=false; 

並沒有爲我工作...

誰能幫我換相同..

謝謝..

+0

您中央社使用where條件。 –

回答

0

這個問題似乎是你的數據與頭部一起導入爲數據行。我可能會建議您剛纔刪除值:

delete from stocks 
    where stock_symbol = 'stock_symbol'; 

否則,你可以修改你的查詢和使用WHERE將它排除在外:

select stock_symbol, count(*) 
from stocks 
where stock_symbol <> 'stock_symbol' 
group by stock_symbol; 
0

嘗試從shell終端下面的命令

hive -s -e'選擇stock_symbol,通過stock_symbol從股票組中計數(*);' |尾-1

注:使用尾部或頭部命令終止的最後一行...

0

相信的時候你有所有有頭輸入轉儲,並且那是它在算什麼反映。

請檢查 Skip first line of csv while loading in hive table

的答案已經被共享的鏈接:)

樣品例如meantion也較早

CREATE TABLE temp 
    ( 
    name STRING, 
    id INT 
) row format delimited fields terminated BY '\t' lines terminated BY '\n' 
tblproperties("skip.header.line.count"="1"); 
+0

是的你是正確的..在插入時,標題存在於tsv文件內。現在我試圖運行查詢而不顯示輸出中的標題。 – saikat123