全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
8040 6
2015-11-02
悬赏 50 个论坛币 已解决
unix系统的时间戳是一串数字如1409501714,转化为标准时间是20140901 12:15:14,现在我使用SAS读取mysql数据库,其中一个字段就是unix的时间戳,请问如何在sas中转为标准时间(如20140901 12:15:14)。

最佳答案

sniperhgy 查看完整内容

楼主你好,请试试我的代码:有一点,那个1409501714对应的时间貌似是2014Aug31 16:15:14 (UTC 0),我用多种语言试验都是这个结果(VBS, SAS, JavaScript 还有 Python)。 如果想得到楼主要求的2014Sep01 00:15:14(UTC 8),需要将dhms的第二个参数改成8,因为dhms默认是按照格林威治时间计算的,那个是标准时间UTC 0, 但是北京处于东八区,所以属于UTC 8,需要将dhms的第二个参数也就是小时的offset调整到8,这样就得到了楼主想要的 ...
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2015-11-2 11:05:46
楼主你好,请试试我的代码:
复制代码
有一点,那个1409501714对应的时间貌似是2014Aug31 16:15:14 (UTC 0),我用多种语言试验都是这个结果(VBS, SAS, JavaScript 还有 Python)。 如果想得到楼主要求的2014Sep01 00:15:14(UTC 8),需要将dhms的第二个参数改成8,因为dhms默认是按照格林威治时间计算的,那个是标准时间UTC 0, 但是北京处于东八区,所以属于UTC 8,需要将dhms的第二个参数也就是小时的offset调整到8,这样就得到了楼主想要的时间。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2015-11-20 15:15:23
sniperhgy 发表于 2015-11-2 11:05
楼主你好,请试试我的代码:有一点,那个1409501714对应的时间貌似是2014Aug31 16:15:14 (UTC 0),我用多种 ...
你这个得到的是31AUG2014:16:15:14,这种格式啊,怎么得到20140831 16:15:14呢,求指教啊
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2015-11-21 13:04:57
alison513688 发表于 2015-11-20 15:15
你这个得到的是31AUG2014:16:15:14,这种格式啊,怎么得到20140831 16:15:14呢,求指教啊
指教不敢提,交流一下:请注意格式的设定。
先不给出答案,请先自己摸索一下啊,线索就是格式的设定。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2016-2-16 15:25:28
http://support.sas.com/documentation/cdl/en/hostunx/67929/HTML/default/viewer.htm#n1klm4vi8lx0qsn1v4r7g375uolc.htm
SAS文档里提到了Unix时间和SAS时间的转换
我使用了这里的代码,但是仍然有点问题,如楼上所说,时区差了8个小时,而且比真正的时间还少了24小时。在+10年的基础上,再加32个小时就好了。


例如:1453703880,在Unix且北京时区下,应该是2016年1月25日14:38。
data _null_;
        unix_dt = 1453703880;
        format unix_dt datetime20.;
        put unix_dt; *结果显示24JAN2006:06:38:00;
run;

使用下面的代码进行转换。
data _null_;
        unix_dt = 1453703880;
        sas_dt = intnx('DThour', intnx('DTyear', unix_dt, 10, 's'), 32, 's'); *使用了两次intnx函数,分别增加10年和32小时;
        format sas_dt datetime20.;
        put sas_dt; *结果显示25JAN2016:14:38:00;
run;

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2017-7-28 11:14:33
lgpax 发表于 2016-2-16 15:25
http://support.sas.com/documentation/cdl/en/hostunx/67929/HTML/default/viewer.htm#n1klm4vi8lx0qsn1v4 ...
应该是多8个小时就行?
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群