全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
5219 3
2011-04-22
各位达达,我有一个数据集从oracle弄来的,有一列变量是时间,informat和format都是datetime20. 也就是ddmmyyyy:hh:mm:ss但是我对它进行year()函数,改变format为date8.或者求时间差datdiff等等操作,都会返回科学计数法的数值。
是因为9.1对datetime20.格式支持不好还是在SAS保存的数据有问题呢?

有没有什么办法能让它变成正常的时间?自己定义该变量的格式?code怎么写呢

谢谢。。
二维码

扫码加我 拉你入群

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

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

全部回复
2011-4-22 17:30:57
datetime记录的是秒数,用datepart()或者是 /86400 转换为天数
就可以使用year() datediff()之类的函数了
二维码

扫码加我 拉你入群

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

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

2011-4-22 22:42:49
2# soporaeternus
您就是大仙!!果然好用
不过我还有个疑问,就是我用以下代码得到该日期的年份,而不再需要year函数了。

复制代码



我想知道year(datepart(variable))得到的东西是什么意义啊,我试了一下返回的是1965,原日期是2005年1月5日0点0时0分。year函数不是返回日期的年份部分吗?
二维码

扫码加我 拉你入群

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

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

2015-4-4 11:31:58
kingyaozhi 发表于 2011-4-22 22:42
2# soporaeternus
您就是大仙!!果然好用
不过我还有个疑问,就是我用以下代码得到该日期的年份,而不 ...
同问啊~你这个问题解决了嘛?怎么处理呀?
二维码

扫码加我 拉你入群

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

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

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

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