scala - Scala -Spark,Spark SQL 中的 selectExpr 用于带双引号的动态字符串
问题描述
用于 selectExpr 的 Spark Scala 正在引发异常 ------------------------------------------- ----------------------------------------^^^
在 org.apache.spark.sql.catalyst.parser.ParseException.withCommand(ParseDriver.scala:239)
我正在为 Struct 字段创建带有强制转换的动态列
s+ """"cast("""+field._1)+" as "+field._2+""")","""
field._1
是当前field._2
的和新的领域。
我已经打印了相同的内容并将其应用于 spark shell 中的数据集,铸件工作正常。但是从程序中它会引发错误
我的预期输出是
val fields= "cast(field1 as field_1)","cast( filed2 as field_2)"
然后应用这个
df.selectExpr(fields)
非常感谢任何帮助或指导。
解决方案
推荐阅读
- javascript - 在 AWS 云上托管 B2B Web 应用程序的差异/选项
- java - Spring 方法注解 null
- c++ - 这个数组索引器如何帮助合并内存访问?
- python - 请用“+1:”解释return
- python - 使用 XPath 从元素下载 HTML 代码 - Python Selenium
- weblogic - 从 weblogic 服务器中删除集群设置
- php - App\Models\ 必须返回一个关系实例
- r - 如何在分组条形图上添加 p 值
- branch - 100%覆盖需要多少个测试用例
- reactjs - 如何在单独的文件中使用 Framer Motion 错开儿童?