Spark SQL - 在列名称中使用逗号为列添加别名
Spark SQL - Alias a column with comma in column name
我必须使用 spark SQL 将数据块中临时视图中的数据以逗号分隔格式存储到数据帧中。
因此,对于临时视图中的多列,dataframe 只需要存储一列,所有数据列分开
示例如下:
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 方式(下面的代码)那样添加别名时,databricks 会抛出错误 - 输入不匹配 "roll,name,subject" 期望
df= spark.sql("""
select concat(roll,',',name,',',subject) as "roll,name,subject" from temp_class
"""
)
如何输入别名?
您需要将列别名放在``(重音符号或反引号)中。
试试这个,它应该适合你 -
df= spark.sql("""
select concat(roll,',',name,',',subject) as `roll,name,subject` from temp_class
"""
)
我必须使用 spark SQL 将数据块中临时视图中的数据以逗号分隔格式存储到数据帧中。 因此,对于临时视图中的多列,dataframe 只需要存储一列,所有数据列分开
示例如下:
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 方式(下面的代码)那样添加别名时,databricks 会抛出错误 - 输入不匹配 "roll,name,subject" 期望
df= spark.sql("""
select concat(roll,',',name,',',subject) as "roll,name,subject" from temp_class
"""
)
如何输入别名?
您需要将列别名放在``(重音符号或反引号)中。
试试这个,它应该适合你 -
df= spark.sql("""
select concat(roll,',',name,',',subject) as `roll,name,subject` from temp_class
"""
)