DataFrame提供了两种语法风格,即DSL语法和SQL语法风格,两者在功能上并无区别,仅仅是根据用户习惯。
1、DSL风格操作
(1)show():查看DataFrame中的具体内容信息。
(2)printSchema():查看DataFrame的Schema信息。
(3)select():查看DataFrame中选取部分列的数据。
例:查询name字段的数据用personDF.select(“name”).show代码直接查询。
例:对列名进行重命名。
例:使用filter()方法筛选age大于或等于25的数据:
例:使用groupBy()方法按年龄进行分组并统计相同年龄的人数。
例:使用sort()方法按年龄降序排列。
2、SQL风格操作
DataFrame的强大之处就是可以将它看作是一个关系型数据表,然后可以在程序中直接使用spark.sql()的方式执行SQL查询,结果将作为一个DataFrame 返回。使用SQL风格操作的前提是需要将DataFrame注册成一个临时表,代码如下所示。
personDF.registerTempTable(“t_person”)
例:查询年龄最大的两个人的信息。
例:查询年龄大于25岁的人的信息。