Skip to content

Commit aa4e60e

Browse files
Concatenate example
1 parent 430fe20 commit aa4e60e

File tree

1 file changed

+49
-0
lines changed

1 file changed

+49
-0
lines changed
Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
package com.sparkbyexamples.spark.dataframe.functions.string
2+
3+
import org.apache.spark.sql.SparkSession
4+
import org.apache.spark.sql.functions.{lit, _}
5+
object ConcatExample extends App {
6+
7+
val spark = SparkSession.builder()
8+
.appName("SparkByExamples.com")
9+
.master("local")
10+
.getOrCreate()
11+
12+
val data = Seq(("James","A","Smith","2018","M",3000),
13+
("Michael","Rose","Jones","2010","M",4000),
14+
("Robert","K","Williams","2010","M",4000),
15+
("Maria","Anne","Jones","2005","F",4000),
16+
("Jen","Mary","Brown","2010","",-1)
17+
)
18+
19+
val columns = Seq("fname","mname","lname","dob_year","gender","salary")
20+
import spark.sqlContext.implicits._
21+
val df = data.toDF(columns:_*)
22+
df.printSchema()
23+
df.show(false)
24+
25+
df.select(concat(col("fname"),lit(','),
26+
col("mname"),lit(','),col("lname")).as("FullName"))
27+
.show(false)
28+
29+
df.withColumn("FullName",concat(col("fname"),lit(','),
30+
col("mname"),lit(','),col("lname")))
31+
.drop("fname")
32+
.drop("mname")
33+
.drop("lname")
34+
.show(false)
35+
36+
df.withColumn("FullName",concat_ws(",",col("fname"),col("mname"),col("lname")))
37+
.drop("fname")
38+
.drop("mname")
39+
.drop("lname")
40+
.show(false)
41+
42+
df.createOrReplaceTempView("EMP")
43+
44+
spark.sql("select CONCAT(fname,' ',lname,' ',mname) as FullName from EMP")
45+
.show(false)
46+
47+
spark.sql("select fname ||' '|| lname ||' '|| mname as FullName from EMP")
48+
.show(false)
49+
}

0 commit comments

Comments
 (0)