如何使用 SQL 通过 Scala 查询 csv 文件



我是Spark Scala的新手,我正在尝试对csv文件进行SQL查询并返回记录。 以下是我拥有的,但不起作用:

val file = sc.textFile(“file:///data/home_data.csv”)
val records = file.sqlContext("SELECT id FROM home_data WHERE yr_built < 1979")
combined.collect().foreach(records)

我在使用file.sqlContext函数时遇到错误。

谢谢

您可以使用 class 将数据与相应的字段名称和数据类型映射,然后使用您的查询:

case class Person(first_name:String,last_name: String,age:Int)
val pmap = p.map ( line => line.split (","))
val personRDD = pmap.map ( p => Person (p(0), p(1), p(2). toInt))
val personDF = personRDD. toDF

然后查询人员 DF。

我不知道模式,所以我以这种方式制定。

最新更新