直接写代码(懒得组织语言了):

df.Procedure_Start_Time.cast("float") #将Procedure_Start_TIme的string类型转成float
df=df.withColumn('Start_Timestamp',func.col("Procedure_Start_Time")/1000.0)
df=df.withCOlumn('Start_TIme',func.from_unixtime(df.Start_TImestamp('yyyy-MM-dd HH:mm:sss')))
flink 1.15.3(此时最新版本为1.16.1)mysql 5.7+mysql同步表结构mysql中的timestamp字段是可以正常同步的,但是多了8小时,设置了mysql链接属性也没效果参考下方的链接有两种方式; 通过 spark -sql,将查询timstamp字段 时间戳 转换成 日期 格式: val simpleDateFormat = new SimpleDateFormat("yyyyMM") spark .udf.register("changDate",(x:Long)=> simpleDateFormat.format(new Date(x * 1000L))) spark .sql("select mid,uid,score,changDate(timstamp) from Ratings") --oracle获得当前时间的,精确到 毫秒 可以指定精确豪秒的位数select to_char(systimestamp, 'yyyymmdd hh24:mi:ss.ff ') from dual;--20120516 11:56:40.729083select to_char(systimestamp, 'yyyymmdd hh24:mi:ss.ff3 ') from dual;--2012... spark .udf.register("hexChar", (x: String) => { val sb = new StringBuilder for (i <- Range(0, x.length, 2)) { val output = x.substrin...