web-dev-qa-db-ja.com

Hiveでクエリを実行しながら、出力とともに列名を取得する方法はありますか?

Hiveでは、クエリを実行すると(select * from employeeなど)、出力に列名は表示されません(名前、年齢、給与などRDBMS SQL) 、値のみを取得します。

クエリを実行するときに、出力とともに列名を表示する方法はありますか?

66
Nithin K Anil

HiveQlでテーブルの列名を表示するには、次のHive confプロパティをtrueに設定する必要があります。

Hive> set Hive.cli.print.header=true;

列名を常に表示する場合は、最初の行で上記の設定を使用して$ HOME/.hivercファイルを更新します。

--Hiveは、HOMEディレクトリで.hivercという名前のファイルを自動的に検索し、含まれているコマンドがあればそれを実行します

133
user2637464

ヘッダーを出力とともに出力するには、クエリを実行する前に、次のHive confプロパティをtrueに設定する必要があります。

Hive> set Hive.cli.print.header=true;
Hive> select * from table_name;

ファイルに結果を取得したい場合は、このようなクエリを使用することもできます。

Hive -e 'set Hive.cli.print.header=true;select * from table_name;' > result.xls

ここでtable_nameテーブル名

12
Sandeep Singh

上記のすべての回答はすでに質問に回答しています。しかし、誰かがこのプロパティを永続的にオンにしたい場合、次のプロパティがあります:Hive.cli.print.header in Hive-default.xmlまたはHive-site.xml

デフォルト値はfalseです。値をtrueにして保存します。できた.

4
Tango

ほとんどのソリューションは正確です。

プロパティHive.cli.print.header = trueの設定は機能します。

ただし、cloudera、HDP、またはその他のディストリビューションを使用している場合、これらはリセットされます。したがって、Hive構成でこれらの値を更新し、サービスを再起動します。

これは永続的な修正です。お役に立てれば。

2
viru

クエリを実行する前にこのプロパティを設定します。

Hive> set Hive.cli.print.header=true;
1
Tariq
1)Permenant solution
change this property in Hive-site.xml file under $Hive_HOME/conf folder
    <property>
    <name>Hive.cli.print.header</name>
    <value>true</value>
    <description>Whether to print the names of the columns in query output.
    </description>
    </property>
2)Temporary solution:
go to Hive Prompt execute this comman
   Hive>set Hive.cli.print.header=True
0
y durga prasad

set Hive.cli.print.header=true;を使用

Hive> set Hive.cli.print.header=true;      
Hive> select * from tblemployee;
OK
id      name    gender  salary  departmentid
1       tomr    male    40000   1
2       cats    female  30000   2
3       john    male    50000   1
4       james   male    35000   3
5       sara    female  29000   2
6       bens    male    35000   1
7       saman   female  30000   NULL
8       russel  male    40000   2
9       valar   female  30000   1
10      todd    male    95000   NULL
Time taken: 9.892 seconds
0
user2102237