Python использует параметр list в pyspark.sql как макрос в sas

#pyspark #apache-spark-sql

#pyspark #apache-spark-sql

Вопрос:

У меня есть список, и я хочу использовать его в pyspark.sql.

 VLIST=['afhjh', 'aikn5','hsa76']
INC=pyspark.sql("select * from table1 where VIG=$VLIST")
  

Я попытался использовать оператор like a sas (используя $ вместо amp; ), который не удался.
Как я могу правильно его использовать.

Ответ №1:

Вы можете попробовать что-то немного другое :

 VLIST = ('afhjh', 'aikn5','hsa76')
INC = pyspark.sql(f"select * from table1 where VIG in {VLIST}")
  

или другим способом :

 from pyspark.sql import functions as F

INC = pyspark.table("table1")
INC = INC.where(F.col("VIG").isin(*(F.lit(val) for val in VLIST)))