HIVE-SHOW列,其中value ='true'

时间:2018-07-01 19:39:40

标签: hadoop hive

我有一个大型数据集,其中包含许多boolean列。本质上,它的布局是这样的(ID int, trait1 BOOLEAN, trait2 BOOLEAN,...,traitN BOOLEAN,也请注意我没有设计数据集。

我正在寻找一种选择行的方法,然后为该行的SHOW列(布尔值是TRUE)进行选择。

类似-

SELECT (SHOW COLUMNS where Value='true') FROM table1 WHERE id='id1'; 

显然,这种组合不起作用,而且我看不到将SHOW COLUMN函数与常规选择查询组合的方法。

我正在研究的另一个选项是以某种方式解析数据集,并将所有BOOLEAN列转换为值正确的每一行的列名数组。因此看起来像(ID int, traitsArray ARRAY),其中traitsArray将是[trait1, trait3, trait9, trait22],但是这对我而言可能会有点先进,并且会使我的数据集不规范。

无论如何,如果有人可以向我指出正确的方向,那将是很大的帮助。

0 个答案:

没有答案