因此,我试图在Presto上为Qubole查询应用一个简单的like函数。对于字符串数据类型,我可以简单地进行像'%United States of America%'。
但是,对于我要应用的列,其基础数据类型为“ map”,因此查询失败。我如何为地图数据类型编写like运算符,以便它仅获取与模式匹配的那些列。
请参阅https://prestosql.io/docs/current/functions/map.html的Presto中与地图相关的功能的文档
您应该可以使用map_filter
过滤掉所需的条目。例如:
SELECT map_filter(MAP(ARRAY['India', 'Poland', 'United States of America'], ARRAY[20, 3, 15]), (k, v) -> k like '%United States of America%');
_col0
-------------------------------
{United States of America=15}
(1 row)