Spark SQL-别名为列名中的逗号

时间:2019-09-25 10:07:04

标签: pyspark-sql databricks

我必须使用Spark SQL将临时视图中的数据存储在databricks中,并以逗号分隔的格式存储到数据帧中。 因此,对于临时视图中的多列,数据框只需要存储一列,而所有数据列都是单独的

下面是示例:

Temp View: temp_class
roll  name   subject
111   Ram    Maths

Dataframe: df

roll,name,subject
111,Ram,Maths

Below is the code without alias:

df= spark.sql("""
select concat(roll,',',name,',',subject) from temp_class
"""
)

当我尝试像常规SQL方式一样添加别名(下面的代码)时,数据块引发错误-输入“ roll,name,subject”不匹配,期望

df= spark.sql("""
select concat(roll,',',name,',',subject) as "roll,name,subject" from temp_class
"""
)

如何输入别名?

1 个答案:

答案 0 :(得分:0)

您需要在``(重音符或反引号)内放入列别名。

尝试一下,它应该对您有用-

df= spark.sql("""
select concat(roll,',',name,',',subject) as `roll,name,subject` from temp_class
"""
)