2017-10-04 2 views
0

J'ai un DataFrame dans Pyspark dont j'ai besoin de sélectionner la ligne où les valeurs d'id sont présentées dans un tableau. Quelqu'un pourrait-il m'aider, s'il vous plaît?Pyspark - Filtre Sql - Sélectionnez toutes les lignes en vérifiant si la valeur d'id est présentée dans un tableau

Exemple:

+---+-----+ 
| id| col2| 
+---+-----+ 
|123| 2 | 
|245| 32 | 
| 12| 34 | 
|234| 1 | 
+---+-----+ 
tableau

: [123, 12, 234]

résultat Desire:

+---+-----+ 
| id| col2| 
+---+-----+ 
|123| 2 | 
| 12| 34 | 
|234| 1 | 
+---+-----+ 

Répondre

1

Vous pouvez utiliser isin avec filter:

ids = [123, 12, 234] 
df.filter(df.id.isin(ids)).show() 
+---+----+ 
| id|col2| 
+---+----+ 
|123| 2| 
| 12| 34| 
|234| 1| 
+---+----+ 
+1

Il était perf ect! Tks! – Thaise