0
如何檢查地圖在Presto中是否沒有鑰匙?如果我有辦法檢查數組是否爲空,我可以使用map_keys
函數來確定映射是否爲空。檢查Presto中的地圖或數組是否爲空?
如何檢查地圖在Presto中是否沒有鑰匙?如果我有辦法檢查數組是否爲空,我可以使用map_keys
函數來確定映射是否爲空。檢查Presto中的地圖或數組是否爲空?
要檢查數組是空的,只需將它與= 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)
我得到' '=' 不能被應用到陣列(行(值整數)),陣列(行(VALUE整數) )',你知道什麼可能是錯的? –
@LeoJiang我該如何重現?我嘗試了'select array [cast(row(1)as row(value integer))] = array [];'並且它正確地返回了'false'(在Presto'master'中) –
我們可能會使用怪異版本的Presto ,我通過將地圖轉換爲JSON並將其轉換爲字符串來找到另一個解決方案。謝謝。 –