Spark SQL支持将多个列合并为一个列。可以使用concat_ws函数实现该功能。该函数的第一个参数是分隔符,其余参数是要合并的列。下面是一个示例:
val df = Seq(("A", "B", "C"),("D", "E", "F")).toDF("col1", "col2", "col3")
df.show()
//+----+----+----+
//|col1|col2|col3|
//+----+----+----+
//| A| B| C|
//| D| E| F|
//+----+----+----+
val result = df.select(concat_ws("-", $"col1", $"col2", $"col3").as("new_col"))
result.show()
//+-------+
//| new_col|
//+-------+
//|A-B-C |
//|D-E-F |
//+-------+
在这个示例中,我们使用了concat_ws函数将三个列合并为一个新列,并使用as方法将其命名为“new_col”。