Python内连接返回空行但Contour可匹配700万订单号求助
内连接匹配异常排查求助
我在代码仓库执行Python转换操作,从三个数据集(caufv_df、afpo_df、prps_df)中选取列后进行内连接。当以OrderNumber字段连接caufv_df与afpo_df时,返回结果为空行;但在Contour中执行相同的内连接操作,能匹配到700万条订单号。
已完成的排查动作:
- 核对两边OrderNumber字段的数据类型,确认匹配
- 尝试多种Spark连接语法,问题未解决
- 移除substring和cast函数,直接使用原始字段连接,结果仍为空
- 注释掉的另一个内连接(afpo_df与prps_df基于WBS_Element连接)可正常运行,排除环境与基础语法错误
恳请协助排查问题,代码如下:
from pyspark.sql import functions as F from transforms.api import transform_df, Input, Output @transform_df( Output("redacted file path"), caufv_df=Input("redacted file path"), afpo_df=Input("redacted file path"), prps_df=Input("redacted file path"), ) def compute(caufv_df, afpo_df, prps_df): # prep caufv_df for joining caufv_df = caufv_df.select( F.col('opertn_task_list_no_|_aufpl').alias('aufpl'), F.col('object_number_|_objnr').alias('objnr'), F.substring(F.col('order_|_aufnr'), 4, 9).cast('integer').alias('OrderNumber'), # F.col('order_|_aufnr').cast('integer').alias('order'), F.col('technical_completion_|_idat2').alias('completed_date'), F.col('order_type_|_auart').alias('Order_Type') ) # prep afpo_df for joining afpo_df = afpo_df.select( F.col('order_item_quantity_|_psmng').alias('Operation_Qty_AFPO'), F.substring(F.col('order_|_aufnr'), 4, 9).cast('integer').alias('OrderNumber'), #F.col('order_|_aufnr').cast('integer').alias('order'), F.col('wbs_element_|_projn').alias('WBS_Element') ) # prep prps_df for joining prps_df = prps_df.select( F.col('wbs_element_|_posid').alias('WBS'), F.col('applicant_no_|_astnr').alias('Applicant_Description'), F.col('applicant_|_astna').alias('ApplicantName'), F.col('wpc_|_zzwpc').alias('WPC'), F.col('material_|_zzmatnr').alias('material_zzmatnr'), F.col('description_|_post1').alias('Descriptionprps'), F.col('customer_code_|_zzccd').alias('CustCode'), F.col('wbs_element_|_pspnr').alias('WBS_Element') ) # join caufv_df with afpo_df and prps_df to create the final dataframe joined_df = caufv_df.join(afpo_df, 'OrderNumber', 'inner') #joined_df = afpo_df.join(prps_df, 'WBS_Element', 'inner') return joined_df
内容的提问来源于stack exchange,提问作者discobuffalo
相关产品推荐
相关产品推荐

