我正在使用spark 1.6.1版本。我要求在循环中执行数据帧。
for ( i <- List ('a','b')){
val i = sqlContext.sql("SELECT i, col1, col2 FROM DF1")}
我希望此数据框执行两次(i = a
和i = b
)。
答案 0 :(得分:3)
您的代码几乎是正确的。 除了两件事:
i
已在您的for
循环中使用,因此请勿在{{1}} val i =
的值,请使用String Interpolation 所以你的代码应该是这样的:
i
作者评论后编辑:
您可以使用for (i <- List ('a','b')) {
val df = sqlContext.sql(s"SELECT $i, col1, col2 FROM DF1")
df.show()
}
然后.map
:
.reduceLeft