单引号 ’
单引号 ’ 在 Scala 中是一个特殊的符号, 通过 ’ 会生成一个 Symbol 对象, Symbol 对象可以理解为是一个字符串的变种, 但是比字符串的效率高很多, 在 Spark 中, 对 Scala 中的 Symbol 对象做了隐式转换, 转换为一个 ColumnName 对象, ColumnName 是 Column 的子类, 所以在 Spark 中可以如下去选中一个列
scala> val value = 'N
value: Symbol = 'N
参见 https://www.cnblogs.com/zhangxiaofan/p/13884807.html
import testImplicits._
遇到这种问题,就在需要使用的地方之前,加上
import testImplicits._