Есть ли способ получить имя столбца вместе с выводом при выполнении любого запроса в Hive?
в улье, когда мы делаем запрос (например:select * from employee), мы не получаем никаких имен столбцов в выходных данных (например, имя, возраст, зарплата, которую мы получили бы в РСУБД SQL), мы получаем только те ценности.
есть ли способ получить имена столбцов, которые будут отображаться вместе с выводом при выполнении любого запроса?
7 ответов:
Если мы хотим видеть имена столбцов таблицы в HiveQl, следующее свойство Hive conf должно быть установлено в true.
hive> set hive.cli.print.header=true;Если вы предпочитаете видеть имена столбцов всегда, то обновите $HOME/.файл hiverc с вышеуказанной настройкой в первой строке..
--Hive автоматически ищет файл с именем .hiverc в вашем домашнем каталоге и запускает команды, которые он содержит, если таковые имеются
чтобы напечатать заголовок вместе с выводом, следующее свойство 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здесь имя_таблицы ваше имя таблицы
все вышеперечисленные ответы уже отвечают на вопрос. Но в случае, если кто-то хочет, чтобы это свойство было постоянно, то есть это свойство:
hive.cli.print.headerнаhive-default.xmlилиhive-site.xml.его значение по умолчанию равно false. Сделайте его значение истинным и сохраните. Сделанный.
большинство решений являются точными.
настройки свойства
hive.cli.print.header = trueстроительство.но если вы используете cloudera, HDP или любые другие дистрибутивы, они будут сброшены. Поэтому обновите эти значения в конфигурациях Hive и перезапустите службы.
Это будет постоянное исправление. надеюсь, это поможет.
использовать
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
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
Comments