在早期版本的spark中我有两个sql表,
t1: (id, body)
t2: (id, name)
我可以查询它们:
spark.read.jdbc("t1 inner join t2 on t1.id = t2.id")
.selectExpr("name", "body")
哪会生成以下查询:
select name, body from t1 inner join t2 on t1.id = t2.id
但是使用spark 2.3我现在收到错误消息:
org.apache.spark.sql.AnalysisException: Found duplicate column(s) in the data schema: `id`
尽管事实上我永远不应该将该列加载到spark中。可能看起来选择可能不再被推送到数据库中了。
有没有解决这个问题的方法?