我试图在snowflake中根据其中一列的数组元素对SQL查询进行子集,但不确定如何做到这一点。
例如,如果列2是一个数组数据类型,看起来像这样的
SELECT column2
FROM table
LIMIT 7;
Row column2
1 ["cats","dogs"]
2 ["horses","cows","cats"]
3 NULL
4 ["dogs","fish]
5 ["birds"]
6 ["cats"]
7 NULL
我想对数据进行子集,并运行一个查询,在第2列的任何一个数组中拉出有 "猫 "的元素的任何一行--即第1,2,6行,我将如何构建这个查询?
使用类似这样的东西是行不通的。
SELECT column1, column2, column3
FROM Table
WHERE column2 = "cats" (or using an IN statement)
并导致一个错误信息,即 "cats "的标识符无效,我希望它是在一个数组中。
如果您有任何见解,我们将不胜感激。