Я пишу запросы в pyspark и мне нужно прочитать данные из postgresql, но я не хочу читать все данные из Postgre, у меня есть столбец Id в фрейме данных pyspark, поэтому я хотел бы читать данные из идентификаторов postgre only ID 1,2 , 3,4. Таким образом, чтобы понять, я заполнил заявление фильтра. Как я собираюсь фильтровать?
Спасибо.
df = spark.createDataFrame([(1, 'John',34),
(2, 'Steve',25)
(3, 'Alex',40)
(4, 'Mat',32)]
,['Id', 'Name', 'Age'])
url = 'postgresql://111.11.11.111:5432/database'
properties = {'user': 'user', 'password': 'password','driver':
'org.postgresql.Driver'}
shopping = DataFrameReader(sqlContext).jdbc(
url='jdbc:%s' % url, table='ads.shopping', properties=properties).\
filter("id in (select id from df)").select('id','name','price')