Arrays 如何迭代Presto数组(MAP(VARCHAR,VARCHAR))
我有一个映射数组(无序的键值对),希望筛选出数组中2019-01-01之前没有创建或修改日期的所有映射项。有没有一种方法可以在没有嵌套表的情况下在presto中实现这一点(我必须迭代以这种方式构造的多个列) 以前Arrays 如何迭代Presto数组(MAP(VARCHAR,VARCHAR)),arrays,lambda,presto,Arrays,Lambda,Presto,我有一个映射数组(无序的键值对),希望筛选出数组中2019-01-01之前没有创建或修改日期的所有映射项。有没有一种方法可以在没有嵌套表的情况下在presto中实现这一点(我必须迭代以这种方式构造的多个列) 以前 +-----------+-------------+--------------------------------------------------------------------------------------------------------------------
+-----------+-------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+--+--+
| Category1 | Count_Items | Item_Details | | |
+===========+=============+============================================================================================================================================================+==+==+
| Fruit | 3 | [{"created":"2019-09-15","color":"red","name":"apples"},{"name":"bananas","created":"2018-08-20"},{"modified":"2019-02-01","name":"kiwi","color":"green"}] | | |
| Vegetable | 2 | [{"color":"green","modified":"2018-01-01","created":"2019-03-31","name":"kale"},{"name":"cauliflower","created":"2019-01-02"}] | | |
+-----------+-------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+--+--+
之后
您需要使用数组——您有array(map)
并且想要有array(map)
。为此,需要为过滤器
(lambda)构造过滤器函数
(如果您需要更详细的说明,请告诉我。)非常感谢您的帮助,Piotr!我能够成功地使用:
FILTER(Item_Details,x->MIN(x['created'],x['modified'])<'2019-01-01')
您建议如何使用map_entries()和任何_match()函数?我看了他们的presto文档,但很难弄清楚如何正确使用它们。@jencodes抱歉,我想我对这个问题有点误解了。你所拥有的太棒了!
+-----------+-------------+----------------------------------------------------------------------------------+--+--+
| Category1 | Count_Items | Item_Details | | |
+===========+=============+==================================================================================+==+==+
| Fruit | 1 | [{"name":"bananas","created":"2018-08-20"}] | | |
| Vegetable | 1 | [{"color":"green","modified":"2018-01-01","created":"2019-03-31","name":"kale"}] | | |
+-----------+-------------+----------------------------------------------------------------------------------+--+--+