select()方法:获取指定字段值
select()方法根据传入的 String类型字段名获取对应的值,并返回一个 DataFrame 对象。
selectExpr()方法:对指定字段进行特殊处理
在实际业务中,可能需要对某些字段进行特殊处理,如为某个字段取别名、对某个字段的数据进行四舍五入等。DataFrame 提供了 selectExpr()方法,可以对指定字段取别名或调用UDF函数对其进行其他处理。selectExpr()方法传人 String 类型的参数,返回一个 DataFrame 对象。
col()/apply()方法 col()和 apply()方法也可以获取 DataFrame 指定字段,但只能获取一个字段,并且返回的是一个 Column 对象。
limit()方法
limit()方法可以获取指定 DataFrame 数据的前 n条记录。不同于 take()与 head()方法limit()方法不是行动操作,因此并不会直接返回查询结果,需要结合 show()方法或其他行动操作才可以显示结果。
orderBy()/sort()方法
orderBy()方法用于根据指定字段对数据进行排序,默认为升序排序。若要求降序排序orderBy()方法的参数可以使用“desc("字段名称")”或“$"字段名称".desc”,也可以在指定字段前面加“.”。
sort()方法也可以根据指定字段对数据进行排序,用法与 orderBy()方法一样。
groupBy()方法可以根据指定字段对数据进行分组操作。groupBy()方法的输入参数既可以是 String 类型的字段名,也可以是 Column 对象。根据 gender 字段对 user 对象进行分组。
join()方法
数据并不一定都存放在同一个表中,也有可能存放在两个或两个以上的表中。根据业务需求,有时候需要连接两个表才可以查询出业务所需的数据。DataFrame 提供了join()方法用于连接两个表。