Apache spark SparkSQL分割字符串

Apache spark SparkSQL分割字符串,apache-spark,apache-spark-sql,Apache Spark,Apache Spark Sql,我有一个有几行的文件。比如说 A B C awer.ttp.net Code 554 abcd.ttp.net Code 747 asdf.ttp.net Part 554 xyz.ttp.net Part 747 我想做一个SparkSQL语句,只拆分表中的a列,并在表D中添加一个新行,其值为awe、abcd、asdf和xyz 我在寻找SQL,而不是Scala或其他一些语言,这里是一个使用带Sp

我有一个有几行的文件。比如说

A               B       C    
awer.ttp.net    Code    554
abcd.ttp.net    Code    747
asdf.ttp.net    Part    554
xyz.ttp.net     Part    747
我想做一个SparkSQL语句,只拆分表中的a列,并在表D中添加一个新行,其值为awe、abcd、asdf和xyz


我在寻找SQL,而不是Scala或其他一些语言,这里是一个使用带Spark的SQL的简单示例

import spark.implicits._
val data = spark.sparkContext.parallelize(Seq(
  ("awer.ttp.net","Code", 554),
  ("abcd.ttp.net","Code", 747),
  ("asdf.ttp.net","Part", 554),
  ("xyz.ttp.net","Part", 747)
)).toDF("A","B","C")

data.createOrReplaceTempView("tempTable")
data.sqlContext.sql("SELECT A, B, C, SUBSTRING_INDEX(A, '.', 1) as D  from tempTable").show
输出:

+------------+----+---+----+
|           A|   B|  C|   D|
+------------+----+---+----+
|awer.ttp.net|Code|554|awer|
|abcd.ttp.net|Code|747|abcd|
|asdf.ttp.net|Part|554|asdf|
| xyz.ttp.net|Part|747| xyz|
+------------+----+---+----+
我希望这有帮助