Избягвайте да отпечатвате името на таблицата в името на колоната, докато използвате beeline

Докато използвам hive в beeline, използвайки проста select заявка, бих искал да върна таблица без име на таблица в име на колона по подразбиране.

Пример

Данни

На пример за проста таблица (TutorialsPoint):

CREATE TABLE IF NOT EXISTS employee ( eid int, name String,
salary String, destination String)
COMMENT 'Employee details'
ROW FORMAT DELIMITED
FIELDS TERMINATED BY '\t'
LINES TERMINATED BY '\n'
STORED AS TEXTFILE;

Заявката SELECT връща:

SELECT * FROM employee;
+---------------+----------------+------------------+-----------------------+--+
| employee.eid  | employee.name  | employee.salary  | employee.destination  |
+---------------+----------------+------------------+-----------------------+--+
+---------------+----------------+------------------+-----------------------+--+

Желани резултати

Желаните резултати се постигат с използване на AS:

SELECT eid AS eid, name AS name, salary AS salary, 
       destination AS destination FROM employee;

+------+-------+---------+--------------+--+
| eid  | name  | salary  | destination  |
+------+-------+---------+--------------+--+
+------+-------+---------+--------------+--+

проблем

Бих искал да избегна въвеждането на AS всеки път, когато изпълнявам select заявка и да връщам резултати без имена на таблици в имената на колони като поведение по подразбиране.


person Konrad    schedule 30.03.2017    source източник


Отговори (1)


set hive.resultset.use.unique.column.names=false

Свойства на конфигурацията

Демонстрация

hive> create table t (i int,j int,k int);
hive> select * from t;

t.i t.j t.k

hive> set hive.resultset.use.unique.column.names=false;
hive> select * from t;

i   j   k
person David דודו Markovitz    schedule 30.03.2017