Databricks官方文档
内置函数 https://spark.apache.org/docs/2.0.2/api/java/org/apache/spark/sql/functions.html
Tips
数据的精度
1
2
3
4import org.apache.spark.sql.functions._
schemaPeople.agg(sum("today_pay").cast(DecimalType(precision=38, scale=9))).alias("today_pay_sum")
// precision 数据长度
// scale 小数长度关联join的使用
官方的示例中,df.join(df2, ‘name’, ‘outer’)这种用法是错误的,
只能使用schemaPeople.as(“a”).join(schemaPeople.as(“b”), $”a.name” === $”b.name”, “outer”),必须指明两个df join的字段添加列
追加列信息,下一步处理时,必须使用val newDF = schemaPeople.withColumn(“add_col”, lit(“new col”))重新赋值- column的空值判断
NO:df.filter(col(‘xxx’) is not None)
YES:df.filter(col(‘xxx’).isNotNull()) - column常量赋值
用lit()包装,如df.withColumn(“src”, lit(“mobile”))