在 Snowflake 中,如何过滤列中的 null 或空数组字段?
列在该括号中有一个空的[]或值字符串,尝试使用array_size(column_name, 1) > 0
但array_size不起作用,
谢谢
最佳答案
您是想过滤掉它们还是过滤掉它们?
无论哪种方式,array_size 都应该有效。虽然没有第二个论点
其中column_name不为空并且array_size(column_name) != 0
为我工作
如果您专门希望过滤具有空数组的记录,这种方法也有效,尽管它有点奇怪。
其中column_name = array_construct()
编辑:您的问题似乎是您的列是一个字符串。有几种方法可以解决这个问题
- 将列的数据类型更改为变体或数组
- 使用数组函数之前解析列
array_size(TRY_PARSE_JSON(column_name)) != 0
- 与字符串进行比较
column_name 不为 null 并且column_name != '[]'
关于sql - 检查数组字段是否为空或为空?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68136387/