Github user dongjoon-hyun commented on a diff in the pull request:
https://github.com/apache/spark/pull/22208#discussion_r212785096
--- Diff: sql/core/src/main/scala/org/apache/spark/sql/Dataset.scala ---
@@ -216,8 +216,16 @@ class Dataset[T] private[sql](
private[sql] def resolve(colName: String): NamedExpression = {
queryExecution.analyzed.resolveQuoted(colName,
sparkSession.sessionState.analyzer.resolver)
.getOrElse {
- throw new AnalysisException(
- s"""Cannot resolve column name "$colName" among
(${schema.fieldNames.mkString(", ")})""")
+ if (schema.fieldNames.contains(colName)) {
--- End diff --
@icexelloss . This cannot handle mixed cases like the following. This
should be handled for the purpose of this PR. Please use
`sparkSession.sessionState.analyzer.resolver`.
```python
spark.range(0, 1).toDF('A.b')['a.B']
```
---
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]