如何用Snowpark和Python实现SQL的WHERE IN子句?
Snowpark实现IN子句的方法
在Snowpark Python API里,要实现SQL里的WHERE COL_NAME IN (1,2,3,4)这类IN子句,直接用col()方法搭配isin()函数就能搞定,具体用法如下:
- 直接传入值列表:
col("COL_NAME").isin([1, 2, 3, 4]) - 如果值列表较长,建议先存成变量再传入,代码更清晰:
target_values = [1, 2, 3, 4] col("COL_NAME").isin(target_values)
给个完整的使用示例,假设你有一个Snowpark DataFramedf,要筛选COL_NAME在指定列表里的行:
from snowflake.snowpark.functions import col target_values = [1, 2, 3, 4] filtered_df = df.filter(col("COL_NAME").isin(target_values))
这个写法和SQL的IN子句效果完全一致,会把COL_NAME值属于[1,2,3,4]的所有行筛选出来。
内容的提问来源于stack exchange,提问作者trey hannam
相关产品推荐
相关产品推荐

