输入:
Name GroupId Processed NewGroupId NgId
Mike 1 N 9 NULL
Mikes 1 N 9 NULL
Miken 5 Y 9 5
Mikel 5 Y 9 5
Output:
Name GroupId Processed NewGroupId NgId
Mike 1 N 9 5
Mikes 1 N 9 5
Miken 5 Y 9 5
Mikel 5 Y 9 5
下面的查询在sql server中工作,由于相关子查询,相同的查询在spark sql中不工作。是否有spark sql或pyspark Dataframe 的替代方案。
选择名称、组ID、IsProcessed、ngid、大小写当ngid为空时,则合并((从临时D中选择前1个ngid,其中D. NewGroupId = T. NewGroupId且D. ngid不为空),null)否则ngid以临时T中的ngid结束
1条答案
按热度按时间ojsjcaue1#
在sparksql中与以下人员合作。
spark.sql(“选择LKUP、组ID、已处理状态、新组ID、合并((从测试2 D中选择最大值(D.ngid),其中D.新组ID = T.新组ID且D. ngid不为空),空)作为测试2 T中的ngid”)