spark sql 获取系统时间,计算时间后结果浮点型转整型
来源:互联网 发布:知乎 被扒皮 编辑:程序博客网 时间:2024/05/17 21:52
spark sql 获取当前系统时间
使用sql的getdate 或者 sysdate方法,测试了,不可行。spark sql不认识这些方法,会出现如下错误
(Exception in thread "main" org.apache.spark.sql.AnalysisException: Undefined function: 'getdate'. This function is neither a registered temporary function nor a permanent function registered in the database 'default'.; line 1 pos 7)
(未知的函数,在数据库中这个函数既不是临时注册函数也不是一个永久注册函数)
想起了spark sql的官方例子
在写spark sql语句的同时,是可以在语句中间拼接scala或者java代码的,那我们试试用java的时间套路看看能不能拼接呢?
使用spark sql拼接java时间
1.构造获取系统时间方法
//获取当前时间函数
def getDate(time:String) = {
val now: Long = System.currentTimeMillis()
var df: SimpleDateFormat = newSimpleDateFormat(time)
df.format(now)
}
2.拼接spark sql 语句
spark.sql("SELECT Sname, ("+ getDate("yyyy") +" - substring(sbirthday, 0, 4)) AS age FROM STUDENT t").show()
3.测试结果
默认spark sql会把计算使用double类型,如果想进行浮点型转整型,可以借助cast函数,不过每个进行计算的字段都要使用这个函数
1.拼接spark sql 语句
spark.sql("SELECT Sname, (CAST("+ getDate("yyyy") +" AS INT) - CAST(substring(sbirthday, 0, 4) AS INT)) AS age " +
"FROM Student t").show()
2.测试结果
- spark sql 获取系统时间,计算时间后结果浮点型转整型
- sql获取系统时间
- SQL获取系统时间
- MySQL_整型、字符、浮点、时间类型
- sql server获取系统时间
- sql server获取系统时间
- sql server获取系统时间
- sql中获取系统时间
- sql 获取当前系统时间
- SQL 获取当前系统时间
- 浮点型转整型
- JavaScript 获取系统时间 计算时间差
- 获取当前系统时间和计算时间差
- 系统时间的获取计算实例
- Delphi 获取系统时间后格式化输出
- 获取系统时间,计算时间差,各种时间格式之间转换
- 浮点数计算后,强制转换成整型的问题
- sql server 获取系统时间的方法
- Ant在eclipse中搭建项目
- QT中识别多个按钮
- 大型网站架构演化历程
- 获取非行间样式
- SQL优化方案总结
- spark sql 获取系统时间,计算时间后结果浮点型转整型
- Using Office2010 for free
- magento开发教程-Magento 2支付提供商网关
- JS基础第九天:逆名函数以及作用域的介绍
- 负载均衡方式
- 如何将网页转换成Android APP
- Mac QT 点点滴滴
- 城市最短路径问题--图的广度优先搜索
- 关于架构演进之路和架构师的技能素养的一点想法