在早期版本的 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`
尽管我永远不应该将该列加载到火花中。看起来选择可能不再被推送到数据库中。
有没有办法解决这个问题?