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) → 普通时间?

浙公网安备 33010602011771号