【问题标题】:Converting mmddyy10. to date9.转换 mmddyy10。迄今为止9。
【发布时间】:2014-01-13 22:32:50
【问题描述】:

我正在尝试将 mmddyy10. 日期(即 11/11/2013)转换为 date9.11NOV2013和 不断失败。任何建议。

data dates; 
 my_birthday = '11/11/2013';  
 date1 = input(input(my_birthday,date9.),date9.); 

 put date1 ; 
run; 

【问题讨论】:

    标签: date sas


    【解决方案1】:
    put(input(my_birthday,mmddyy10.),date9.)
    

    如果你真的想让它成为角色。 INPUT 将字符转换为数字,PUT 将数字转换为字符。在这里,你的字符就像MMDDYY10.,所以你INPUTMMDDYY10 得到一个数字,然后PUT 得到你喜欢的格式(DATE9)。

    将其视为翻译。 11/11/2013 是法语,11NOV2013 是西班牙语,后面的数字是英语。 INPUT 需要一个法语->英语词典,所以MMDDYY10.; PUT 需要一本英语到西班牙语词典,所以DATE9.

    更好:将其存储为真实日期(数字)并使用一种格式,以便于来回交换。

    【讨论】:

    • Joe ,它进入了一个查询,它将访问一些 db2 表和一些 sas 本机表,所以我可能不得不保持这样。再次感谢。
    • SAS/ACCESS to DB2 应该处理 SAS 值和 DB2 日期值之间的日期转换。
    猜你喜欢
    • 2014-09-13
    • 1970-01-01
    • 2017-08-14
    • 1970-01-01
    • 1970-01-01
    • 2014-11-16
    • 1970-01-01
    • 1970-01-01
    • 2014-06-07
    相关资源
    最近更新 更多