HIVE用正则表达式选择列名?

时间:2015-11-10 15:05:01

标签: hive

我想知道是否可以查询某些描述的起始列的hive术语rehiliare选择中的列?

例如: 具有此列名称列表的表 pattern1 pattern2 motif3 balab1 balabal2 ma1 ma2 ma3

选择(具有模式的选择列初学者的表达式) 从表

谢谢

2 个答案:

答案 0 :(得分:5)

我相信您希望根据正则表达式选择列。

以下工作:

  set hive.support.quoted.identifiers=none;
  select `patt.*` from test_table;

上面的代码将在你提到的列中返回pattern1 pattern2> pattern1 pattern2 motif3 balab1 balabal2 ma1 ma2 ma3"

有关详细信息,请参阅https://cwiki.apache.org/confluence/display/Hive/LanguageManual+Select#LanguageManualSelect-REGEXColumnSpecification

答案 1 :(得分:0)

在select之后和from之后,您必须使用反引号字符(键盘上的tilda而非单引号)才能在配置单元中运行正则表达式。