如何select Hive SQL 中具有相同前缀(开始)或后缀(结束)或中间关键字(包括)的列
How to select columns in Hive SQL with the same prefix (beginning) or suffix (ending) or key word in the middle (including)
编辑1:注意,我知道我们中的一些人会质疑为什么不在不同的属性中列出不同部分的信息,这样我就有了一个关系数据库来查询。实际情况与我在下面列出的示例不同,这里使用变量名只是为了方便。
编辑 2:为了减少数据库设计的混乱,我更改了示例中的变量名称。
在 Hive 查询中,我正在寻找一种方法 select 具有相同前缀或相同后缀的列,或在来自相同 [= 的变量名称中间包含相同关键字的列47=].
这是一个例子:我有一个这样的变量列表:
a_A_1, a_A_2, a_B_1, a_B_2,
b_A_1, b_A_2, b_B_1, b_B_2
练习 1
我想要 select 以 'a' 开头的所有属性。
练习 2
我想要 select 所有属性 以 '1' 结尾。
练习 3
我要select所有属性包括'B'.
非常感谢!
幸运的是I found a way to do so,我希望它能使许多正在寻找相同答案的人受益。
首先,你需要在你的Hive环境中运行这个设置:
set hive.support.quoted.identifiers=none;
查看下面的解决方案
练习 1
select `a.*` from test_table;
练习 2
select `.*1$` from test_table;
练习 3
select `.*B.*` from test_table;
编辑1:注意,我知道我们中的一些人会质疑为什么不在不同的属性中列出不同部分的信息,这样我就有了一个关系数据库来查询。实际情况与我在下面列出的示例不同,这里使用变量名只是为了方便。
编辑 2:为了减少数据库设计的混乱,我更改了示例中的变量名称。
在 Hive 查询中,我正在寻找一种方法 select 具有相同前缀或相同后缀的列,或在来自相同 [= 的变量名称中间包含相同关键字的列47=].
这是一个例子:我有一个这样的变量列表:
a_A_1, a_A_2, a_B_1, a_B_2,
b_A_1, b_A_2, b_B_1, b_B_2
练习 1 我想要 select 以 'a' 开头的所有属性。
练习 2 我想要 select 所有属性 以 '1' 结尾。
练习 3 我要select所有属性包括'B'.
非常感谢!
幸运的是I found a way to do so,我希望它能使许多正在寻找相同答案的人受益。
首先,你需要在你的Hive环境中运行这个设置:
set hive.support.quoted.identifiers=none;
查看下面的解决方案
练习 1
select `a.*` from test_table;
练习 2
select `.*1$` from test_table;
练习 3
select `.*B.*` from test_table;