文章作者邮箱:[email protected] 地址:广东惠州
▲ 本章节目的
⚪ 掌握Spark的SparkSQL通过方法来使用;
⚪ 掌握Spark的SparkSQL通过sql语句来调用;
一、SparkSQL基础语法——通过方法来使用
1. 查询
df.select("id","name").show();
2. 带条件的查询
df.select($"id",$"name").where($"name" === "bbb").show()
3. 排序查询
orderBy/sort($"列名") 升序排列
orderBy/sort($"列名".desc) 降序排列
orderBy/sort($"列1" , $"列2".desc) 按两列排序
df.select($"id",$"name").orderBy($"name".desc).show
df.select($"id",$"name").sort($"name".desc).show
tabx.select($"id",$"name").sort($"id",$"name".desc).show
4. 分组查询
groupBy("列名", ...).max(列名) 求最大值
groupBy("列名", ...).min(列名) 求最小值
groupBy("列名", ...).avg(列名) 求平均值
groupBy("列名", ...).sum(列名) 求和
groupBy("列名", ...).count() 求个数
groupBy("列名", ...).agg 可以将多个方法进行聚合
scala>val rdd = sc.makeRDD(List((1,"a","bj",100),(2,"b","sh",80),(3,"c","gz",50),(4,"d","bj",45)));
scala>val df = rdd.toDF("id","name","addr","score");
scala>df.groupBy("addr").count().show()