Spark SQL 编程初级实践1-Spark SQL 基本操作 - 宥宁

时间:2024-02-23 14:42:21

Spark SQL 编程初级实践1-Spark SQL 基本操作

Spark SQL 基本操作
将下列 JSON 格式数据复制到 Linux 系统中,并保存命名为 employee.json。

{ "id":1 , "name":" Ella" , "age":36 }
{ "id":2, "name":"Bob","age":29 }
{ "id":3 , "name":"Jack","age":29 }
{ "id":4 , "name":"Jim","age":28 }
{ "id":4 , "name":"Jim","age":28 }
{ "id":5 , "name":"Damon" }
{ "id":5 , "name":"Damon" }

写入/usr/local/sparkdata文件里,命名为employee.json

然后为 employee.json 创建 DataFrame

创建DataFrame:

 (1)查询所有数据:

利用DataFrame的show()方法:df.show()

 (2)查询所有数据并去除重复的数据:

利用distinct()方法去重:df.distinct().show()

 (3)查询所有数据打印时去除id字段:

利用drop()方法去除字段:df.drop("id").show()

 (4)筛选出sge>30的记录:

利用filter()方法筛选数据:df.filter(df(“age”>30)).show()

 (5)将数组按age分组:

利用groupBy()方法分组:df.groupBy("age")

 (6)将数据按 name 升序排列:
利用sort()方法排序:df.sort(df("name").asc).show()

 (7)取出前 3 行数据:
df.head(3)

 (8)查询所有记录的name列,并为其取名为username:

df.select(df("name")as("username")).show()

 (9)查询年龄age的平均值:

df.agg("age"->"avg").show()

 (10) 查询年龄 age 的最小值:
df.agg("age"->"min").show()