unix_timestamp、from_unixtime时间戳函数的使用

最近在看一个别人写的sql文件,其中有两个关于时间戳的函数,防止忘记,在这里记录一下!!!

1、unix_timestamp函数用法 

  unix_timestamp()的作用是获得当前时间戳,

  (1)如果参数date(时间)满足yyyy-MM-dd HH:mm:ss形式,则能够直接unix_timestamp(string date) 获得参数对应的时间戳,

  (2)如果参数date(时间)不满⾜yyyy-MM-dd HH:mm:ss形式,则我们需要指定date的形式,在进⾏转换:

  unix_timestamp(‘2009-03-20’, ‘yyyy-MM-dd’)=1237532400

 2、from_unixtime函数用法 

   语法:from_unixtime(t1,’yyyy-MM-dd HH:mm:ss’)

  其中t1是10位的时间戳值,即1970-1-1至今的秒,而13位的所谓毫秒的是不可以的。

  对于13位时间戳,需要截取,然后转换成bigint类型,因为from_unixtime类第一个参数只接受bigint类型。例如:

  select from_unixtime(cast(substring(tistmp,1,10) as bigint),’yyyy-MM-dd HH’) tim ,count(*) cn from ttengine_hour_data where …

  他们两个可以结合使用from_unixtime(unix_timestamp(date_created),'yyyy-MM-dd HH:mm:ss')来规范时间的格式。

 

  如何在不同编程语言中获取现在的Unix时间戳(Unix timestamp)?

 

 

 

如何在不同编程语言中实现Unix时间戳(Unix timestamp) → 普通时间?

 

posted @ 2022-06-08 10:40  灰化肥会发黑  阅读(755)  评论(0)    收藏  举报