Ambari Hive,Where Clause

问题描述 投票:0回答:1

我需要一些Hive Query的帮助。

  • 表名是frame_curated
  • 列名是Message
  • 列类型是字符串

在该列中,数据的格式如下:

IP":"1735", "ID":"G54X"

我在列消息中寻找ID="G54X"的记录。

像这样的东西

Select * FROM frame_curated WHERE frame_curated.Message LIKE '%G54X%'

根据我的研究,我认为它应该是这样的:

Select * FROM frame_curated WHERE  frame_curated.Message.ID ['G54X']

但它不起作用。

非常感谢您的帮助。

罗勒

hive ambari
1个回答
0
投票

我认为frame_curated.Message.ID ['G54X']不适用于字符串数据类型。它只能在您的数据类型为List<dict<string:string>>时才有效

你可以使用这样的东西

select * from temp.test2 where value like '%"ID":%G54X%'

另一种方法是,将表数据类型更改为complex并运行您建议的查询。

© www.soinside.com 2019 - 2024. All rights reserved.