Как получить имя столбца и ввести его в куст

Я знаю о таких,

  • Чтобы получить имена столбцов в таблице, мы можем запустить:

    show columns in <database>.<table_name>
    
  • Чтобы получить описание таблицы (включая имя_столбца, тип_столбца и многие другие данные):

    describe [formatted] <database>.<table_name>
    

Я знаю, что могу использовать приведенный выше запрос и отфильтровать результат, чтобы получить имена и типы столбцов. Но я хочу знать, есть ли какая-либо прямая команда для получения только имен и типов столбцов, таких как select columns, column_type ...?


person Ani Menon    schedule 12.11.2017    source источник
comment
Посмотрите этот ответ, пожалуйста, stackoverflow.com/a/45053915/2700344   -  person leftjoin    schedule 12.11.2017
comment
@leftjoin спасибо, это помогает, но возникают проблемы, если имена столбцов содержат пробелы.   -  person Ani Menon    schedule 12.11.2017


Ответы (2)


В HIVE вы можете использовать:

DESCRIBE FORMATTED [DatabaseName].[TableName] [Column Name];

Это дает вам тип данных столбца и некоторую статистику этого столбца.

DESCRIBE [DatabaseName].[TableName] [Column Name];

Это просто дает вам тип данных и комментарии, если они доступны для определенного столбца.

Надеюсь это поможет.

person pramodM    schedule 01.03.2019

В отличие от традиционных СУБД, Hive хранит метаданные в отдельной базе данных. В большинстве случаев это MySQL или Postgres. Если у вас есть доступ к базе данных хранилища метаданных, вы можете запустить SELECT для таблицы TBLS, чтобы получить сведения о таблицах, и COLUMNS_V2, чтобы получить сведения о столбцах.

person Ramesh    schedule 12.11.2017
comment
Спасибо, Рамеш, но у меня нет доступа к метабазе данных. - person Ani Menon; 13.11.2017