我从列标题中有空格的 df 注册了一个 tmp 表。如何在通过 sqlContext 使用 sql 查询时提取列。
我尝试使用反勾号但它不起作用

df1 =  sqlContext.sql("""select Company, Sector, Industry, `Altman Z-score as Z_Score` from tmp1 """)

最佳答案

您只需将列名放在反引号中,而不是其别名:

没有别名 :

df1 =  sqlContext.sql("""select Company, Sector, Industry, `Altman Z-score` as Z_Score from tmp1""")

使用别名 :
df1 =  sqlContext.sql("""select t1.Company, t1.Sector, t1.Industry, t1.`Altman Z-score` as Z_Score from tmp1 t1""")

关于apache-spark - 如何处理spark中数据框列名中的空格,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43108007/

10-16 00:56