Как объединить эти 2 DataFrame и вернуть такой результат?
df_joined = df1.join(df2, Seq('USER_NAME'), 'left' )
Как получить список всех пользователей, лицензии которых по-прежнему актуальны?
df_relevant = df_joined
.withColumn('STATUS', when(col('REQUEST_DATE') > col('START_SERVICE') and col('REQUEST_DATE') < col('END_SERVICE'), col('STATUS')).otherwise('No information')
.select('USER_NAME', 'REQUEST_DATE', 'STATUS' )
Для выполнения этого, на самом деле необходимо сделать это в Кристаллическом Отчете. Моя рекомендация состоит в том, чтобы добавить параметр к нему и затем отредактировать заголовок, и нижний колонтитул подавляют формулы для проверки параметра. Именно так мы выполнили его. Если бы существует способ сделать это из Вашего кода, я интересовался бы знанием его также.
Удачи!