检查 Presto 中的地图或数组是否为空?
Checking if a map or array is empty in Presto?
如何在 Presto 中检查地图是否没有键?如果我有办法检查数组是否为空,我可以使用 map_keys
函数来确定映射是否为空。
要检查数组是否为空,只需将其与 = array[]
进行比较即可。
示例:
presto> select (map_keys(map(array[], array[])) = array[]) as is_empty;
is_empty
----------
true
(1 row)
同样,要检查地图是否为空,只需将其与 = map()
进行比较即可。
示例:
presto> select (map(array[], array[]) = map()) as is_empty;
is_empty
----------
true
(1 row)
您可以使用cardinality
函数:https://prestodb.io/docs/current/functions/array.html#cardinality
select cardinality(array[]) = 0;
_col0
-------
true
(1 row)
如何在 Presto 中检查地图是否没有键?如果我有办法检查数组是否为空,我可以使用 map_keys
函数来确定映射是否为空。
要检查数组是否为空,只需将其与 = array[]
进行比较即可。
示例:
presto> select (map_keys(map(array[], array[])) = array[]) as is_empty;
is_empty
----------
true
(1 row)
同样,要检查地图是否为空,只需将其与 = map()
进行比较即可。
示例:
presto> select (map(array[], array[]) = map()) as is_empty;
is_empty
----------
true
(1 row)
您可以使用cardinality
函数:https://prestodb.io/docs/current/functions/array.html#cardinality
select cardinality(array[]) = 0;
_col0
-------
true
(1 row)