|
@@ -54,11 +54,16 @@ object makedata_ad_33_bucketData_add_Feature_20250813 {
|
|
|
|
|
|
// 合并结果
|
|
|
val result = joined.map { case (adverid, (leftMap, rightOpt)) =>
|
|
|
- val mergedMap = rightOpt match {
|
|
|
- case Some(rightMap) => leftMap ++ Map("category_name" -> rightMap.getOrElse("category_name", null))
|
|
|
- case None => leftMap + ("category_name" -> null)
|
|
|
+ val categoryName = rightOpt match {
|
|
|
+ case Some(rightMap) =>
|
|
|
+ rightMap.get("category_name") match {
|
|
|
+ case Some(value: String) => value // 确保类型正确
|
|
|
+ case Some(other) => other.toString // 强制转换为字符串
|
|
|
+ case None => null
|
|
|
+ }
|
|
|
+ case None => null
|
|
|
}
|
|
|
- mergedMap
|
|
|
+ leftMap + ("category_name" -> categoryName)
|
|
|
}
|
|
|
|
|
|
odpsOps.saveToTable(project, outputTable, partition, result, write, defaultCreate = true, overwrite = true)
|